Form.IsMdiContainer プロパティ

定義

フォームがマルチ ドキュメント インターフェイス (MDI: Multiple Document Interface) 子フォームのコンテナーかどうかを示す値を取得または設定します。

public:
 property bool IsMdiContainer { bool get(); void set(bool value); };
public bool IsMdiContainer { get; set; }
member this.IsMdiContainer : bool with get, set
Public Property IsMdiContainer As Boolean

プロパティ値

フォームが MDI 子フォームのコンテナーである場合は true。それ以外の場合は false。 既定値は、false です。

次の例では、 プロパティの IsMdiContainer 使用と、MDI フォームの BackColor プロパティの変更を示します。 この例を実行するには、次のコードを新しいフォームに貼り付けます。


// Create a new form.
Form mdiChildForm = new Form();

private void Form1_Load(object sender, System.EventArgs e)
{

    // Set the IsMdiContainer property to true.
    IsMdiContainer = true;

    // Set the child form's MdiParent property to 
    // the current form.
    mdiChildForm.MdiParent = this;

    // Call the method that changes the background color.
    SetBackGroundColorOfMDIForm();
}

private void SetBackGroundColorOfMDIForm()
{
    foreach ( Control ctl in this.Controls )
    {
        if ((ctl) is MdiClient)

            // If the control is the correct type,
            // change the color.
        {
            ctl.BackColor = System.Drawing.Color.PaleGreen;
        }
    }
}

' Create a new form.
Dim mdiChildForm As New Form

Private Sub Form1_Load(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles MyBase.Load

    ' Set the IsMdiContainer property to true.
    IsMdiContainer = True

    ' Set the child form's MdiParent property to 
    ' the current form.
    mdiChildForm.MdiParent = Me

    'Call the method that changes the background color.
    SetBackGroundColorOfMDIForm()
End Sub

Private Sub SetBackGroundColorOfMDIForm()
    Dim ctl As Control

    ' Loop through controls,  
    ' looking for controls of MdiClient type. 
    For Each ctl In Me.Controls
        If TypeOf (ctl) Is MdiClient Then

            ' If the control is the correct type,
            ' change the color.
            ctl.BackColor = System.Drawing.Color.PaleGreen
        End If
    Next

End Sub

注釈

このプロパティは、フォームの表示と動作を MDI 親フォームに変更します。 このプロパティが に true設定されている場合、フォームには、上の罫線を持つ沈んだクライアント領域が表示されます。 親フォームに割り当てられているすべての MDI 子フォームは、クライアント領域内に表示されます。

MDI 親フォームを閉じると、 Closing MDI 親フォームのイベントが発生する前に、すべての MDI 子フォームの Closing イベントが発生します。 さらに、 Closed MDI 親フォームのイベントが発生する前に、 Closed すべての MDI 子フォームのイベントが発生します。

注意

MDI 子フォームに 2 つのMenuStripコントロールがある場合は、親フォームの を にtrue設定IsMdiContainerすると、1 つのMenuStripコントロールの内容のみがマージされます。 MDI 親フォーム上の追加の子MenuStripコントロールの内容をマージするには、 を使用Mergeします。

適用対象

こちらもご覧ください