2010-10-27 13 views
3

Je me demandais si je pouvais ajouter un contrôle utilisateur à une page avec un paramètre, puis accéder à ce paramètre dans le code behiind pour l'initialisation.accéder à un paramètre ascx dans le code derrière

Par exemple sur ma page aspx j'aurais quelque chose comme. Comment accéder au paramètre DefaultCountry dans mon code Map.ascx.cs derrière le fichier.

Si je suis hors base sur ce qui est la bonne implémentation?

EDIT:

figured it out

à la page .aspx

<uc1:myPartnerMap ID="MyPartnerMap1" runat="server" defaultCountry="USA"/> 

dans .ascx.cs du contrôle utilisateur

private string defaultCountry; 

    public String DefaultCountry 
    { 
     get { return defaultCountry; } 
     set { defaultCountry = value; } 
    } 

    protected void Page_Load(object sender, EventArgs e) 
    { 
     if (!IsPostBack) 
     { 
      CountrySelector.SelectedValue = defaultCountry; 
     } 
    } 
+0

Merci de partager votre solution au problème! –

+0

+1 pour fournir la réponse! – Matt

Répondre

1

Vous appelleriez le premier usercontrol , puis la propriété publique sur le contrôle de l'utilisateur.

myMap1.DefaultCountry = "UnitedStates"; 
1

Dans ce cas DefaultCountry Sould être une propriété de votre contrôle utilisateur. Vous pouvez donc simplement y accéder en utilisant cette propriété de l'instance du contrôle utilisateur.

+0

Et si je devais utiliser ceci pour définir une valeur par défaut dans une liste déroulante comme ceci, c'est différent je le prends. theDawckta

0

Ce code est assez

dans la page .aspx

<uc1:myPartnerMap ID="MyPartnerMap1" runat="server" DefaultCountry ="USA"/> 

dans .ascx.cs du contrôle utilisateur

public String DefaultCountry { get; set; } 

La propriété sera initialisé avec la valeur "USA" automatiquement.