webForumDet fria alternativet

Hitta kontroll i användarkontroll

.NET

3 svar · 320 visningar · startad av m_soderlund

Medlem sedan sep. 20026 425 inlägg
Frågan#1

Jag har i min default.aspx-sida en placeholder som heter main. I denna laddar jag beroende på vilken sida användaren surfar till olika användarkontroller.

main.Controls.Add(Page.LoadControl("articles.ascx"))

I t.ex. articles.ascx så har jag en repeater som heter r_articles. Den kan inte ta emot någon datakälla genom att jag enbart i min codebehind-fil skriver r_articles.DataSource = xx. Det blir error - kontrollen hittas helt enkelt inte. Jag vet att det borde gå att hitta repeatern genom att använda FindControl, men har inte lyckats hittils.

Alltså: hur ska jag hitta repeatern som ligger i en användarkontroll som laddas i en placeholder i default.aspx?

Medlem sedan apr. 2001246 inlägg
#2

Jag har precis ställt samma fråga (nästan iaf)...
Kolla här

Medlem sedan apr. 20012 266 inlägg
#3

Du bör nog inte försöka sätt datakällan i från Page utan i stället sätta den inifrån kontrollen (.ascx). Fungerar det inte heller att sätt datakällan från articles code-behind?

Medlem sedan sep. 20026 425 inlägg
#4

Jag strukturerade om mina sidor en smula, och när jag i stället satte datakällan från min användarkontroll så gick det hela smidigt. :)

266 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)