次の方法で共有


Form.OwnedForms プロパティ

定義

対象となるフォームによって所有されている全フォームを表す、Form オブジェクトの配列を取得します。

public:
 property cli::array <System::Windows::Forms::Form ^> ^ OwnedForms { cli::array <System::Windows::Forms::Form ^> ^ get(); };
[System.ComponentModel.Browsable(false)]
public System.Windows.Forms.Form[] OwnedForms { get; }
[<System.ComponentModel.Browsable(false)>]
member this.OwnedForms : System.Windows.Forms.Form[]
Public ReadOnly Property OwnedForms As Form()

プロパティ値

Form[]

対象となるフォームによって所有されているフォームを表す Form 配列。

属性

次の例では、 プロパティを使用して、 OwnedForms 所有者フォームが所有するすべてのフォームを変更する方法を示します。 この例の最初のメソッドは、所有フォームに関連付けられている所有フォームの配列にフォームを追加します。 2 番目のメソッドは、所有されているすべてのフォームをループ処理し、キャプションを変更します。 この例では、両方のメソッドがイベントまたはフォームの他のメソッドによって呼び出される必要があります。

private:
   void AddMyOwnedForm()
   {
      // Create form to be owned.
      Form^ ownedForm = gcnew Form;

      // Set the text of the owned form.
      ownedForm->Text = String::Format( "Owned Form {0}", this->OwnedForms->Length );

      // Add the form to the array of owned forms.
      this->AddOwnedForm( ownedForm );

      // Show the owned form.
      ownedForm->Show();
   }

   void ChangeOwnedFormText()
   {
      // Loop through all owned forms and change their text.
      for ( int x = 0; x < this->OwnedForms->Length; x++ )
      {
         this->OwnedForms[ x ]->Text = String::Format( "My Owned Form {0}", x );
      }
   }
private void AddMyOwnedForm()
{
   // Create form to be owned.
   Form ownedForm = new Form();
   // Set the text of the owned form.
   ownedForm.Text = "Owned Form " + this.OwnedForms.Length;
   // Add the form to the array of owned forms.
   this.AddOwnedForm(ownedForm);
   // Show the owned form.
   ownedForm.Show();
}

private void ChangeOwnedFormText()
{
   // Loop through all owned forms and change their text.
   for (int x = 0; x < this.OwnedForms.Length; x++)
   {
      this.OwnedForms[x].Text = "My Owned Form " + x.ToString();
   }
}
Private Sub AddMyOwnedForm()
   ' Create form to be owned.
   Dim ownedForm As New Form()
   ' Set the text of the owned form.
   ownedForm.Text = "Owned Form " + Me.OwnedForms.Length.ToString()
   ' Add the form to the array of owned forms.
   Me.AddOwnedForm(ownedForm)
   ' Show the owned form.
   ownedForm.Show()
End Sub


Private Sub ChangeOwnedFormText()
   Dim x As Integer
   ' Loop through all owned forms and change their text.
   For x = 0 To (Me.OwnedForms.Length) - 1
      Me.OwnedForms(x).Text = "My Owned Form " + x.ToString()
   Next x
End Sub

注釈

このプロパティは、このフォームが所有するすべてのフォームを含む配列を返します。 別のフォームが所有するフォームを作成するには、 メソッドを AddOwnedForm 呼び出します。 所有者フォームに割り当てられたフォームは、メソッドが呼び出されるまで RemoveOwnedForm 所有されたままです。 所有者フォームへの参照を持つ プロパティを設定することで、別の Owner ユーザーが所有するフォームを作成することもできます。

フォームが別のフォームによって所有されている場合、フォームは所有者フォームで閉じられるか非表示になります。 たとえば、 という名前 Form2 のフォームによって所有されている という名前のフォームがあるとします Form1。 が閉じているか最小化されている場合 Form1 は、 Form2 閉じているか非表示になります。 所有フォームは、所有者フォームの背後にも表示されません。 ウィンドウの検索や置換など、所有フォームをウィンドウに使用できます。これは、所有者フォームを選択したときに所有者フォームの背後に表示することはできません。

注意

フォームが複数ドキュメント インターフェイス (MDI) の親フォームの場合、このプロパティは、現在開いている MDI 子フォームを除き、表示されるすべてのフォームを返します。 MDI 親フォームで開かれた MDI 子フォームを取得するには、 プロパティを使用します MdiChildren

適用対象

こちらもご覧ください