2010-11-16 5 views
0

J'essaie d'ajouter des contrôles utilisateur sur une page. C'est facile, je le fais comme ça.Ajout de contrôles utilisateur à l'exécution - accès aux contrôles

UserControl block = (categoryblock) LoadControl("categoryblock.ascx"); 
Panel1.Controls.Add(block); 

Mais je veux accéder aux contrôles d'étiquette et plus qui sont à l'intérieur du categoryblock.ascx. Comment ferais-je cela?

Je ne peux pas le faire comme ça,

block.l_itemName.text = "blabla";

J'ai réussi à l'utilisateur FindControl ("l_itemName") mais je voudrais plutôt avoir le IntelliSense.

Répondre

1

créer propriété suivante dans votre contrôle utilisateur:

public string ItemName() { 
    get() { 
     return l_itemName.text; 
    } 

    set(String value) { 
     l_itemName.text = value; 
    }  
} 

Cela vous fera capable de faire block.ItemName = "" ou string temp = block.ItemName

J'espère que cela vous aidera

+0

Je n'obtenir ce travail, je ne peux pas obtenir la propriété à apparaître. Je comprends bien si je fais ça. "bloc categoryblock = new categoryblock();" - block.ItemName .... – user509439

+0

A obtenu au travail en le moulant d'abord comme si. (Bloc (categoryblock)) .ItemName = "bla"; – user509439

+0

sympa, je suis content que cela ait aidé. Si cela résout votre problème, marquez-le comme une réponse. –

Questions connexes