Control.CreateControlCollection Control.CreateControlCollection Control.CreateControlCollection Control.CreateControlCollection Method

定義

建立新的 ControlCollection 物件來保存伺服器控制項的子控制項 (常值和伺服器)。Creates a new ControlCollection object to hold the child controls (both literal and server) of the server control.

protected:
 virtual System::Web::UI::ControlCollection ^ CreateControlCollection();
protected virtual System.Web.UI.ControlCollection CreateControlCollection ();
abstract member CreateControlCollection : unit -> System.Web.UI.ControlCollection
override this.CreateControlCollection : unit -> System.Web.UI.ControlCollection
Protected Overridable Function CreateControlCollection () As ControlCollection

傳回

ControlCollection 物件,包含目前伺服器控制項的子伺服器控制項。A ControlCollection object to contain the current server control's child server controls.

範例

下列程式碼會覆寫CreateControlCollection方法用來建立的執行個體CustomControlCollection類別,繼承自ControlCollection類別。The following code example overrides the CreateControlCollection method to create an instance of a CustomControlCollection class, which inherits from the ControlCollection class.

// 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 override ControlCollection CreateControlCollection()
{
	return new CustomControlCollection(this);
}
' 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
    Return New CustomControlCollection(Me)
End Function

下列程式碼範例會使用CreateControlCollection中的自訂伺服器控制項的方法覆寫的CreateChildControls方法。The following code example uses the CreateControlCollection method in a custom server control override of the CreateChildControls method. 新的集合時建立,並以兩個子控制項,然後填入firstControlsecondControlThe new collection is created, and then populated with two child controls, firstControl and secondControl.


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;
}

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


備註

覆寫這個方法的自訂伺服器控制項中,如果您已建立一個集合物件,衍生自ControlCollection類別。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.

適用於

另請參閱