Compartir a través de


Form.IsMdiContainer Propiedad

Definición

Obtiene o establece un valor que indica si el formulario es un contenedor para formularios MDI (interfaz de múltiples documentos) secundarios.

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

Valor de propiedad

Es true si el formulario es un contenedor de formularios MDI secundarios; en caso contrario, es false. De manera predeterminada, es false.

Ejemplos

En el ejemplo siguiente se muestra el uso de la IsMdiContainer propiedad , así como el cambio de la BackColor propiedad de un formulario MDI. Para ejecutar este ejemplo, pegue el código siguiente en un nuevo formulario.


// 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

Comentarios

Esta propiedad cambia la presentación y el comportamiento del formulario a un formulario primario MDI. Cuando esta propiedad se establece trueen , el formulario muestra un área cliente hundida con un borde elevado. Todos los formularios secundarios MDI asignados al formulario primario se muestran dentro de su área de cliente.

Cuando se cierra un formulario primario MDI, los Closing eventos de todos los formularios secundarios MDI se generan antes de que se genere el evento del formulario primario MDI Closing . Además, los Closed eventos de todos los formularios secundarios MDI se generan antes de que se genere el Closed evento del formulario primario MDI.

Nota

Si hay dos MenuStrip controles en un formulario secundario MDI, establecer IsMdiContainer en true para el formulario primario combina el contenido de solo uno de los MenuStrip controles. Use Merge para combinar el contenido de controles secundarios adicionales MenuStrip en el formulario primario MDI.

Se aplica a

Consulte también