2012-05-14 56 views
10

當單擊應用程序停止時,可以捕獲Windows窗體關閉事件嗎? 我知道應用程序停止工作,但有什麼方法可以在應用程序關閉時在任何情況下觸發? 我發現從谷歌這些方法,但他們沒有工作:捕獲應用程序退出事件 - WinForms

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

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

是否有可能去接近事件時,點擊應用程序停止按鈕?

+0

你的意思是關閉瀏覽器?你需要檢查javascript onUnload方法()或onbeforeunload()方法。 – Anuraj

+0

你的意思是由asp.net windows窗體?在WinForms上運行ASP.Net? – Anuraj

+0

讓我們看看我是否有這樣的直線。 A.)你的程序崩潰了,或者沒有響應,所以你必須用任務管理器或其他東西來關閉它,並且你還想在事件關閉之前觸發一個事件。它是否正確。或者B.)當程序正常結束時,你是否只希望事件觸發?什麼,確切的是一個應用程序停止按鈕? –

回答

16

在Program.cs的文件,你必須有這些方法以前 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()); 
    } 

您還可以使用Disposed事件上的MainForm(在Application.Run方法使用的形式)。

相關問題