Ladda den från codebehind kanske vore nåt.
typ
UserControl uc = (UserControl) Page.LoadControl("WebUserControl1.ascx");
PlaceHolder1.Controls.Add(uc);
läs mer här
http://www.codeproject.com/aspnet/LoadingUSerControl.asp
2 svar · 264 visningar · startad av doggelito
Jag kommer inte riktigt underfund med hur jag ska gå till väga här.
Jag har ett antal usercontrols. Dessa vill jag sedan implementera på sidan beroende på vilket menyval besökaren klickat på.
Ex. klickar besökaren på nyheter så aktiveras userkontrollen uc_newslist.ascx, klickar han på kalendarie så körs uc_eventlist.ascx igång osv.
Hur bör logiken se ut då?
Jag har en masterpage i botten, en Default.aspx som har en meny och plats för alla userkontroller. Klickar man i menyn på ex. nyheter så kommer man till Default.aspx?MenuID=4
Där gör jag sedan ett databasanrop och kollar om menyvalet har en modul, finns en modul returneras modulnamnet till sidan.
Och där står jag nu! Hur laddar jag in rätt usercontrol?
Ladda den från codebehind kanske vore nåt.
typ
UserControl uc = (UserControl) Page.LoadControl("WebUserControl1.ascx");
PlaceHolder1.Controls.Add(uc);
läs mer här
http://www.codeproject.com/aspnet/LoadingUSerControl.asp
Jag vet inte, det känns som jag bygger åt fel håll här.
Ett par av userkontrollerna har events som ska bubbla tillbaka till huvudsidan och även vidare till andra userkontroller.
Hur får jag med dessa events om jag laddar kontrollen från codebehind?
För jag vill ju inte hårdkoda alla metoder som eventen triggar på min defaultsida, då tappar jag ju hela poängen men att dynamiskt ladda mina kontroller.
Hmm, får nog fortsätta googla om detta om ingen här har gjort nått liknande!