open modal form c# winforms

modal - show form c#



¿Cuál es la diferencia entre las funciones Show(), ShowDialog() y Application.Run()? (3)

Esta pregunta ya tiene una respuesta aquí:

¿Cuál es la diferencia entre las nuevas funciones Show (), ShowDialog () y Application.Run ()? En main (winforms) vi:

Application.Run(new Form1());

Luego, para Form1, también vi Form1.Show() con descripción: "Muestra el control al usuario". Para ShowDialog, decía "Muestra el formulario como un cuadro de diálogo modal".

¿Qué significa esto?

¿Cuáles son cada uno de sus usos y cuál es el más común?


Application.Run () inicia el bucle de mensajes para la aplicación de formularios de Windows. En su nivel más básico, mantiene vivo el proceso hasta que se cierra la última forma.

http://msdn.microsoft.com/en-us/library/system.windows.forms.application.run(v=vs.110).aspx

El método Show () muestra un formulario de ventanas en un estado no modal.

http://msdn.microsoft.com/en-us/library/szcefbbd(v=vs.110).aspx

El método ShowDialog () muestra una ventana en un estado modal y detiene la ejecución del contexto de llamada hasta que el método devuelve un resultado del formulario de ventanas abierto.

http://msdn.microsoft.com/en-us/library/c7ykbedk(v=vs.110).aspx


La función Show muestra el formulario de forma no modal . Esto significa que puede hacer clic en el formulario principal.

ShowDialog muestra el formulario modalmente , lo que significa que no puede ir al formulario principal

Application.Run() ejecuta el formulario padre principal y lo convierte en el formulario principal. Application.Run () se encuentra generalmente en main .


  • Show muestra el formulario de una manera no modal.
  • ShowDialog muestra el formulario de una manera modal .
  • Application.Run inicia un bucle de mensajes para la aplicación y muestra el formulario como formulario principal de la aplicación