Control.CreateControlCollection Method
Creates a new ControlCollection object to hold the child controls (both literal and server) of the server control.
[Visual Basic] Protected Overridable Function CreateControlCollection() As _ ControlCollection [C#] protected virtual ControlCollection CreateControlCollection(); [C++] protected: virtual ControlCollection* CreateControlCollection(); [JScript] protected function CreateControlCollection() : ControlCollection;
Return Value
A ControlCollection object to contain the current server control's child server controls.
Remarks
Override this method in a custom server control if you have created a collection object that is derived from the ControlCollection class. You can then instantiate that collection class in the override of this method.
Example
[Visual Basic, C#, C++] The following code example overrides the CreateControlCollection method to create an instance of a CustomControlCollection class, which inherits from the ControlCollection class.
[Visual Basic]
' Override the CreateControlCollection method to
' write to the Trace object when tracing is enabled
' for the page or application in which this control
' is included.
Protected Overrides Function CreateControlCollection() As ControlCollection
Dim CC As CustomControlCollection = New CustomControlCollection(Me)
End Function
[Visual Basic, C#, C++] The following code example uses the CreateControlCollection method in a custom server control override of the CreateChildControls method. The new collection is created, and then populated with two child controls, firstControl and secondControl. method.
[Visual Basic] Protected Overrides Sub CreateChildControls() ' Creates a new ControlCollection. Me.CreateControlCollection() ' Create child controls. Dim firstControl As New ChildControl() firstControl.Message = "FirstChildControl" Dim secondControl As New ChildControl() secondControl.Message = "SecondChildControl" Controls.Add(firstControl) Controls.Add(secondControl) ' Prevent child controls from being created again. ChildControlsCreated = True End Sub 'CreateChildControls [C#] protected override void CreateChildControls() { // Creates a new ControlCollection. this.CreateControlCollection(); // Create child controls. ChildControl firstControl = new ChildControl(); firstControl.Message = "FirstChildControl"; ChildControl secondControl = new ChildControl(); secondControl.Message = "SecondChildControl"; Controls.Add(firstControl); Controls.Add(secondControl); // Prevent child controls from being created again. ChildControlsCreated = true; } [C++] protected: void CreateChildControls() { // Creates a new ControlCollection. this->CreateControlCollection(); // Create child controls. ChildControl* firstControl = new ChildControl(); firstControl->Message = S"FirstChildControl"; ChildControl* secondControl = new ChildControl(); secondControl->Message = S"SecondChildControl"; Controls->Add(firstControl); Controls->Add(secondControl); // Prevent child controls from being created again. ChildControlsCreated = true; }
[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button
in the upper-left corner of the page.
Requirements
Platforms: Windows 2000, Windows XP Professional, Windows Server 2003 family
See Also
Control Class | Control Members | System.Web.UI Namespace | ControlCollection