Sdílet prostřednictvím


Control.CreateChildControls Metoda

Definice

Volána rozhraním ASP.NET stránky k upozornění serverových ovládacích prvků, které používají implementaci založenou na složení k vytvoření všech podřízených ovládacích prvků, které obsahují při přípravě na zaúčtování zpět nebo vykreslení.

protected:
 virtual void CreateChildControls();
protected public:
 virtual void CreateChildControls();
protected virtual void CreateChildControls ();
protected internal virtual void CreateChildControls ();
abstract member CreateChildControls : unit -> unit
override this.CreateChildControls : unit -> unit
Protected Overridable Sub CreateChildControls ()
Protected Friend Overridable Sub CreateChildControls ()

Příklady

Následující příklad ukazuje přepsánou verzi CreateChildControls metody . V této implementaci složeného ovládacího prvku zobrazí TextBox ovládací prvek uzavřený ve dvou literálových ovládacích prvcích, které vykreslují HTML.

Důležité

Tento příklad obsahuje textové pole, které přijímá vstup uživatele, což je potenciální bezpečnostní hrozba. Ve výchozím nastavení ASP.NET webové stránky ověřte, že uživatelský vstup neobsahuje skript nebo elementy HTML. Další informace najdete v tématu Přehled zneužití skriptů.

// Override CreateChildControls to create the control tree.
 [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="Execution")]
 protected override void CreateChildControls() {

     // Add a LiteralControl to the current ControlCollection.
     this.Controls.Add(new LiteralControl("<h3>Value: "));

     // Create a text box control, set the default Text property, 
     // and add it to the ControlCollection.
     TextBox box = new TextBox();
     box.Text = "0";
     this.Controls.Add(box);

     this.Controls.Add(new LiteralControl("</h3>"));
 }

' Override CreateChildControls to create the control tree.
<System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="Execution")> _
Protected Overrides Sub CreateChildControls()
   
   ' Add a LiteralControl to the current ControlCollection.
   Me.Controls.Add(New LiteralControl("<h3>Value: "))
   
   
   ' Create a text box control, set the default Text property, 
   ' and add it to the ControlCollection.
   Dim box As New TextBox()
   box.Text = "0"
   Me.Controls.Add(box)
   
   Me.Controls.Add(New LiteralControl("</h3>"))
End Sub

Poznámky

Při vývoji složeného nebo šablonovaného serverového ovládacího prvku musíte tuto metodu přepsat. Ovládací prvky, které přepíší metodu CreateChildControls , by měly implementovat INamingContainer rozhraní, aby nedocházelo ke konfliktům názvů.

Další informace najdete v tématech Šablony ovládacích prvků webového serveru a Vývoj vlastních ASP.NET serverových ovládacích prvků.

Platí pro

Viz také