Avatar billede teleskop Nybegynder
19. maj 2008 - 21:33 Der er 2 kommentarer og
1 løsning

Add UserControl med Loadcontrol, men hvordan med properties?

Hello

Jeg tilføjer en dynesmisk usercontrol med loadcontrol i .vb således:

Dim uc As UserControl = DirectCast(LoadControl(controlPath), UserControl)
PlaceHolder1.Controls.Add(uc)

Men jeg vil gerne overføre nogle værdier (via properties) til min usercontrol, men hvordan fanger jeg dem?

På forhånd tak :)
Avatar billede mikalj Nybegynder
21. maj 2008 - 08:38 #1
Nu er det her eksemlpel godt nok i C#, men du kan nok gennemskue det alligevel.
lav properties i din usercontrol

public partial class EksempelUsercontrol : System.Web.UI.UserControl
{
    public string VærdiXYZ
    {
        get { return TextBoxVærdi.Text; }
        set { TextBoxVærdi.Text = value; }
    }
    public int EtTal
    {
        get
        {
            if(ViewState["EtTal"] != null)
                return (int)ViewState["EtTal"];
            return 0;
        }
        set { ViewState["EtTal"] = value; }
    }
    protected void Page_Load(object sender, EventArgs e) { }
}

Når du så loader din usercontrol kan du tilgå dens properties.

EksempelUsercontrol uc = (EksempelUsercontrol)Page.LoadControl("/EksempelUsercontrol.ascx");
uc.VærdiXYZ = "Ekstraordinært!";
uc.EtTal = 42;
PlaceHolderDer.Controls.Add(uc);

Som du kan se vil den ene property sætte teksten i en af usercontrollens textboxe, mens den anden bare vil gemme en værdi i usercontrollens viewstate.
Avatar billede teleskop Nybegynder
21. maj 2008 - 15:30 #2
thanx ...kommer du med et svar :)
Avatar billede mikalj Nybegynder
21. maj 2008 - 18:06 #3
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester