我有一個winform應用程序,可以捕獲任何數量的可能的錯誤。但我發現,一旦顯示錯誤的消息框或其他方法(在catch塊內),程序就會繼續執行。c# - 停止程序執行的錯誤
我該如何簡單地停止在這個事件中完成程序的執行,並且只是保持表單打開?它只是一個形式的應用程序。
我有一個winform應用程序,可以捕獲任何數量的可能的錯誤。但我發現,一旦顯示錯誤的消息框或其他方法(在catch塊內),程序就會繼續執行。c# - 停止程序執行的錯誤
我該如何簡單地停止在這個事件中完成程序的執行,並且只是保持表單打開?它只是一個形式的應用程序。
顯示該消息框後,簡單的通話Application.Exit();
這就夠了,只要你沒有背景中的任何其他正在運行的線程,但在你的情況看來,這只是一個簡單的單線程應用程序
我認爲停止他意味着暫停/暫停,而不是終止。 – CodesInChaos 2010-10-13 12:44:51
這不起作用?它仍然顯示消息框,但是應用程序繼續?任何想法爲什麼?它只是一個單線程的應用程序。 – 2010-10-13 12:48:15
所有這些都發生在構造函數內嗎?表單的構造函數中的try/catch,messagebox和處理是什麼? – 2010-10-13 12:50:32
您可能希望將模態對話框的所有者窗口設置爲您的窗體。這種方式執行不會暫停,但表單已停用。
假設你有這樣的事情:
Private Sub Button1_OnCLick(....) handles button1.onclick
If somecondition then
MsgBox("it failed")
End if
'more code here
,並要避免執行「更多的代碼」時,消息框已經顯示出,再加入
退出小組
剛過MsgBox行
DialogResult result = MessageBox.Show("There was an error, would you like to continue?", "Error",
MessageBoxButtons.YesNo, MessageBoxIcon.Question);
if (result == DialogResult.No)
{
// Terminate
}
您想停止應用程序並保持窗體打開?兩者都不可能。 – smirkingman 2010-10-13 12:45:21
出現錯誤時必須停止進程,從而允許用戶糾正? – 2010-10-13 13:06:21