Form.IsMdiContainer Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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 true
en , 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.