Hej allihopa. Prova först och främst att lägga det i master-filen alternativt i page_load. page_init körs inte jämt. Se också om det hjälper att placera koden senare i sidans livscykel. Eventen kommer i följande ordning:FindControl() i Page_Init
Jag skulle behöva lite hjälp. Det är så att jag dynamiskt laddar in usercontroller i placeholders utifrån en array i Page_Init. Detta görs genom att jag loopar igenom arrayen modul och laddar rätt kontroll i rätt placeholders genom att hämta värdet i arrayen.
Något i stil med detta...
<code>
foreach (Object i in modul)
{
PlaceHolder holder = (PlaceHolder)Page.FindControl("holder" + i);
if (holder != null)
{
holder.Controls.Add(LoadControl("moduler/" + i + "/" + i + ".ascx"));
}
}
</code>
Denna kod fungerar....
<code>
foreach (Object i in modul)
{
holdernews.Controls.Add(LoadControl("moduler/" + i + "/" + i + ".ascx"));
}
</code>
Problemet är att FindControl() inte hittar kontrollen, returnerar null. Om jag däremot refererar till den med "hårdkodat" id fungerar koden som den ska. Vilket jag inte kan göra för jag vet inte antalet kontroller som ska laddas, vilka eller till vilka palceholders. Placeholderna är inte dynamiskt skapade. Sidan har en masterpage kopplat till sig och placeholdrarna ligger i en contentplaceholder på sidan inte i masterpagen.
Någon som kan vara snäll och ta en funderare och ge mig lite tips.
Tacksam för hjälp.Sv: FindControl() i Page_Init
Sv: FindControl() i Page_Init
PreInit, Init, InitComplete, PreLoad, Load, Control events (Click etc), LoadComplete, PreRender, SaveStateComplete, Render och Unload.