Cómo abrir una ventana o un cuadro de diálogo (WPF .NET)

Puede crear sus propias ventanas y mostrarlas en Windows Presentation Foundation (WPF). En este artículo aprenderá a mostrar ventanas y diálogos modales y sin modo.

Conceptualmente, una ventana y un cuadro de diálogo son lo mismo: se muestran a un usuario para proporcionar información o interacción. Ambos son objetos «ventana». El diseño de la ventana y la forma en que se usa es lo que da lugar a un cuadro de diálogo. Por lo general, un cuadro de diálogo tiene un tamaño pequeño y requiere que el usuario responda a él. Para obtener más información, consulte Información general sobre ventanas de WPF e Información general sobre cuadros de diálogo.

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 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 abre la ventana se pausa hasta que se cierra la ventana. Este mecanismo proporciona una manera sencilla de solicitar al usuario datos y esperar su respuesta.

Use el método ShowDialog para abrir una ventana. El código siguiente crea una instancia de la ventana y la abre de forma modal. El código que abre la ventana se detiene, 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, consulte Información general de los cuadros de diálogo: procesamiento de la respuesta.

Abrir como sin modo

Abrir una ventana sin modo significa mostrarla como una ventana normal. El código que abre la ventana continúa en ejecución a medida que la ventana se vuelve visible. Puede centrarse e interactuar con todas las ventanas sin modo que muestra la aplicación, sin restricciones.

Use el método Show para abrir una ventana. El código siguiente crea una instancia de la ventana y la abre sin modo. 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.

Vea también