我有一個mainForm和一個saveForm。 我從不關閉mainForm,只是讓saveForm出現在頂部。關閉窗體並做一些事情返回到另一個窗體
當我關閉saveForm時,我想要一段代碼在返回mainForm時運行。
達到此目的的最佳方法是什麼?
我有一個mainForm和一個saveForm。 我從不關閉mainForm,只是讓saveForm出現在頂部。關閉窗體並做一些事情返回到另一個窗體
當我關閉saveForm時,我想要一段代碼在返回mainForm時運行。
達到此目的的最佳方法是什麼?
除了@ benPearce的答案,如果你的內容有saveForm出現模態,那麼你可以撥打電話:
所以在mainForm
,我假設你有一個保存按鈕(我們稱之爲btnSave
)的某種可以帶來saveForm
,對吧?對。因此,雙擊該保存按鈕,Visual Studio將爲您創建一個事件處理程序。輸入下面的代碼。
private void btnSave_Click(object sender, EventArgs e)
{
saveForm sf = new SaveForm();
if (sf.ShowDialog() == DialogResult.OK)
{
// do your thing
}
}
當然,您必須確保saveForm正在設置DialogResult。舉例來說,假設你有在saveForm
的OK按鈕時應該關閉saveForm
...在Click事件確定按鈕你可以這樣做:
private void btnOK_Click(object sender, EventArgs e)
{
this.DialogResult = DialogResult.OK;
this.Close();
}
在MainForm中,訂閱FormClosed事件的saveForm,把你的代碼在事件處理此事件
void saveForm_FormClosed(object sender, FormClosedEventArgs e)
{
/// code here
}
我會在哪裏把這個? – sark9012 2010-04-19 21:30:52
在mainForm或saveForm中? – sark9012 2010-04-19 21:31:17
@Luke。您可以在mainForm中執行此操作。 – AngryHacker 2010-04-19 21:47:59