次の方法で共有


Control.ControlCollection.AddRange メソッド

コレクションにコントロール オブジェクトの配列を追加します。

Public Overridable Sub AddRange( _
   ByVal controls() As Control _)
[C#]
public virtual void AddRange(Control[] controls);
[C++]
public: virtual void AddRange(Control* controls[]);
[JScript]
public function AddRange(
   controls : Control[]);

パラメータ

  • controls
    コレクションに追加する Control オブジェクトの配列。

解説

controls 配列に格納されている Control オブジェクトが、コレクションの末尾に追加されます。

Add メソッドを使用して個別の Control を手動でコレクションに追加するのではなく、 AddRange メソッドを使用して Control オブジェクトのグループをすばやくコレクションに追加できます。

以前追加した Control を削除するには、 RemoveRemoveAtClear の各メソッドを使用します。

継承時の注意: 派生クラスで AddRange をオーバーライドする場合は、基本クラスの AddRange メソッドを呼び出して、確実にコントロールがコレクションに追加されるようにしてください。

使用例

[Visual Basic, C#, C++] 2 つの Control オブジェクトを派生クラス PanelControl.ControlCollection に追加する例を次に示します。この例では、 Form 上に Panel コントロールと Button コントロールを作成済みであることを前提にしています。ボタンがクリックされると、2 つの RadioButton コントロールがパネルの Control.ControlCollection に追加されます。

 
' Create two RadioButtons to add to the Panel.
Dim RadioAddButton As RadioButton = New RadioButton()
Dim RadioAddRangeButton As RadioButton = New RadioButton()

' Add controls to the Panel using the AddRange method.
Private Sub AddRangeButton_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles AddRangeButton.Click
    ' Set the Text the RadioButtons will display.
    RadioAddButton.Text = "RadioAddButton"
    RadioAddRangeButton.Text = "RadioAddRangeButton"

    ' Set the appropriate location of RadioAddRangeButton.
    RadioAddRangeButton.Location = New System.Drawing.Point( _
    RadioAddButton.Location.X, _
    RadioAddButton.Location.Y + RadioAddButton.Height)

    ' Add the controls to the Panel.
    Panel1.Controls.AddRange(New Control() {RadioAddButton, RadioAddRangeButton})
End Sub

[C#] 
// Create two RadioButtons to add to the Panel.
private RadioButton radioAddButton = new RadioButton();
private RadioButton radioRemoveButton = new RadioButton();

// Add controls to the Panel using the AddRange method.
private void addRangeButton_Click(object sender, System.EventArgs e)
{
   // Set the Text the RadioButtons will display.
   radioAddButton.Text = "radioAddButton";
   radioRemoveButton.Text = "radioRemoveButton";
            
   // Set the appropriate location of radioRemoveButton.
   radioRemoveButton.Location = new System.Drawing.Point(
     radioAddButton.Location.X, 
     radioAddButton.Location.Y + radioAddButton.Height);
            
   //Add the controls to the Panel.
   panel1.Controls.AddRange(new Control[]{radioAddButton, radioRemoveButton});
}

[C++] 
// Create two RadioButtons to add to the Panel.
private:
RadioButton* radioAddButton;
RadioButton* radioRemoveButton;

// Add controls to the Panel using the AddRange method.
void addRangeButton_Click(Object* /*sender*/, System::EventArgs* /*e*/) {
    radioAddButton = new RadioButton();
    radioRemoveButton = new RadioButton();

    // Set the Text the RadioButtons will display.
    radioAddButton->Text = S"radioAddButton";
    radioRemoveButton->Text = S"radioRemoveButton";

    // Set the appropriate location of radioRemoveButton.
    radioRemoveButton->Location = System::Drawing::Point(radioAddButton->Location.X, 
        radioAddButton->Location.Y + radioAddButton->Height);

    //Add the controls to the Panel.
    Control* controlArray[] = {radioAddButton, radioRemoveButton};
    panel1->Controls->AddRange(controlArray);
}

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

Control.ControlCollection クラス | Control.ControlCollection メンバ | System.Windows.Forms 名前空間 | Add | CopyTo