Compartir a través de


Cómo abrir una ventana o un cuadro de diálogo

Puede crear sus propias ventanas y mostrarlas en Windows Presentation Foundation (WPF). En este artículo, aprenderá a mostrar ventanas y cuadros de diálogo modales y modelados.

Conceptualmente, una ventana y un cuadro de diálogo son lo mismo: se muestran a un usuario para proporcionar información o interacción. Son ambos objetos "ventana". El diseño de la ventana y la forma en que se usa es lo que hace que un cuadro de diálogo. Un cuadro de diálogo suele ser pequeño y requiere que el usuario responda a él. Para obtener más información, vea Información general sobre ventanas y cuadros de diálogo de WPF.

Si está interesado en abrir cuadros de diálogo del sistema operativo, consulte Cómo abrir un cuadro de diálogo común.

Abrir como ventana modal

Cuando se abre una ventana modal, generalmente representa un cuadro de diálogo. WPF restringe la interacción a la ventana modal y el código que abrió la ventana se pausa hasta que se cierra la ventana. Este mecanismo proporciona una manera fácil de solicitar al usuario datos y esperar su respuesta.

Use el ShowDialog método para abrir una ventana. El siguiente código crea una instancia de la ventana y la abre de forma modal. El código que abre la ventana se pausa, esperando a que se cierre la ventana:

var window = new Margins();

window.Owner = this;
window.ShowDialog();
Dim myWindow As New Margins()

myWindow.Owner = Me
myWindow.ShowDialog()

Importante

Una vez cerrada una ventana, no se puede usar la misma instancia de objeto para volver a abrir la ventana.

Para obtener más información sobre cómo controlar la respuesta del usuario a un cuadro de diálogo, vea Información general sobre los cuadros de diálogo: Procesamiento de la respuesta.

Abrir como modelos

Abrir un modelo de ventana significa mostrarlo como una ventana normal. El código que abre la ventana continúa ejecutándose a medida que la ventana se vuelve visible. Puede centrarse e interactuar con todas las ventanas de modelos mostradas por la aplicación, sin restricciones.

Use el Show método para abrir una ventana. El código siguiente crea una instancia de la ventana y la abre sin modalidad. El código que abre la ventana continúa ejecutándose:

var window = new Margins();

window.Owner = this;
window.Show();
Dim myWindow As New Margins()

myWindow.Owner = Me
myWindow.Show()

Importante

Una vez cerrada una ventana, no se puede usar la misma instancia de objeto para volver a abrir la ventana.

Consulte también