我有一個按鈕單擊事件處理程序與下面的僞代碼:C#爲什麼form.Close()不關閉表單?
private void btnSave_Click(object sender, EventArgs e)
{
if(txt.Text.length == 0)
this.Close();
else
// Do something else
// Some other code...
}
這僅僅是一些簡單的代碼,但問題是,當文本長度爲零,我想關閉表單。但不是關閉表單,而是執行部分//一些其他代碼。單擊事件處理程序完成執行後,表單將關閉。
我知道,當我在this.Close()
之後立即輸入return
時,表格將關閉,但我想知道爲什麼當您撥打this.Close()
時,表格不是直接關閉的。爲什麼執行事件處理程序的其餘部分?
但直觀上,我會除了在調用this.Close()時將窗體關閉,但事實並非如此。感謝您的澄清。 – Martijn 2010-10-12 08:49:31
@Martijn:所以表單保持打開狀態並且根本不關閉?你可以顯示「其他代碼」在做什麼嗎?或者你可以發佈一個簡單的示例顯示該行爲? – 2010-10-12 08:55:11
@ 0x3a:不正確。表單執行事件處理程序中的所有代碼,然後關閉表單。你已經回答了我的問題:)我想知道爲什麼'Close()'不會在調用'Close()'的時候破壞表單。 – Martijn 2010-10-12 08:57:07