ControlCollection クラス
アセンブリ: System.Web (system.web.dll 内)
構文
ControlCollection クラスの任意のプロパティおよびメソッドに、Control.Controls プロパティをとおしてアクセスできます。Control クラスはすべての ASP.NET サーバー コントロールの基本クラスであるため、すべてのサーバー コントロールは、このプロパティを継承します。
コレクションの詳細については、「コレクションとデータ構造体」を参照してください。
Control.CreateChildControls メソッドをオーバーライドして、2 つのコントロール (ChildControl という名前のカスタム クラスの 2 つのインスタンス) を作成するコード例を次に示します。これらのコントロールには、Message という名前の文字列プロパティが存在します。2 つのコントロールを、作成した後で ControlCollection に追加しています。このバージョンの Control.CreateChildControls を含むクラスにこれらのコントロールを追加するために、Add メソッドを各コントロールに対して呼び出しています。このコードではまた、作成したコントロールが不必要に再作成されることのないよう、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
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; }
スレッド セーフ
プラットフォーム
Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
参照
- ControlCollection クラスのページへのリンク