2012-05-14 23 views
10

¿Es posible capturar evento de cierre de formulario de Windows cuando se hace clic en la detención de la aplicación. Sé que la aplicación deja de funcionar, pero ¿hay algún método disponible que se active en cualquier caso cuando se cierre la aplicación? me encontré con estos métodos de Google, pero no están trabajando:Capturar evento de salida de aplicación - WinForms

AppDomain.CurrentDomain.ProcessExit += new EventHandler(CurrentDomain_ProcessExit); 

o

Application.ApplicationExit += new EventHandler(this.OnApplicationExit); 

¿Es posible acercarse al evento clic en el botón de parada de la aplicación?

+0

¿Quiere decir cerrar el navegador? Debe verificar el método javascript onUnload method() o onbeforeunload(). – Anuraj

+0

¿Qué quieres decir con los formularios de asp.net windows? ASP.Net ejecutándose en WinForms? – Anuraj

+0

Veamos si tengo esto claro. R.) Su programa se bloquea o no responde, por lo que debe cerrarlo con el administrador de tareas o algo así, y aún desea que se desencadene un evento antes de que se cierre. Es esto correcto. O B.) ¿Simplemente quiere un evento para disparar cuando el programa termina normalmente? ¿Qué es exactamente un botón de detención de la aplicación? –

Respuesta

16

En Program.cs archivo, debe tener esos métodos antes Application.Run:

[STAThread] 
    static void Main() 
    { 
     Application.EnableVisualStyles(); 
     Application.SetCompatibleTextRenderingDefault(false); 
     Application.ApplicationExit += new EventHandler(Application_ApplicationExit); 
     AppDomain.CurrentDomain.ProcessExit += new EventHandler(CurrentDomain_ProcessExit); 
     Application.Run(new MainForm()); 
    } 

También puede utilizar el evento dispuesta en el MainForm (la forma usada en el método Application.Run).

Cuestiones relacionadas