2011-04-15 2 views
0

Je veux savoir comment créer des éléments enfants pour un contrôle serveur et est-il une documentation ou des tutoriels sur ce par exempleControl Server Créer des enfants Éléments

<myMenu:Menu id="Menu1" runat="server"> 
    <myMenu:MenuItem Text="Some Text" Link="www.msdn.com"> // <-- 
    // ^-- Theis part how do you create child controls collection 
    </myMenu:MenuItem> 
</myMenu:Menu> 


namespace ControlsBook2Lib.Ch08 
{ 
[DefaultProperty("Text")] 
[ToolboxData("<{0}:Menu runat=server></{0}:Menu>")] 
public class Menu : WebControl 
{ 
    protected override void RenderChildren(HtmlTextWriter writer) 
    { 
     base.RenderChildren(writer); 
    } 
} 

[ToolboxData("<{0}:MenuItem runat=server></{0}:MneuItem>")] <-- this part is wrong I know 
public class MenuItem : WebControl 
{ 
    protected override void Render(HtmlTextWriter writer) 
    { 
     base.Render(writer); 
    } 
} 
} 
+0

Il semble que vous ayez une faute de frappe dans la balise fermante du balisage transmise à l'attribut 'ToolboxData'. Ce devrait être '' not ''. –

Répondre

1

Vous devez exposer une propriété dans le contrôle des parents qui détient la collection des éléments enfants - notez que le type enfant n'a pas besoin d'être un contrôle (il peut s'agir d'une classe normale).

Voir this MSDN article qui décrit comment développer un tel contrôle serveur - voir le example où un exemple de contrôle conserve la collection de la classe de contact. Vous avez également un exemple d'éditeur de collection en développement pour fournir une interface utilisateur pour l'édition de la même chose.

Questions connexes