我在我的應用程序中有兩個窗體,Form1
和Form2
。我想知道是否有更好的方法檢查表單是否已經加載。如果表格是 加載在內存中並且可見,我希望按鈕不做任何事情,如果User
已關閉窗體,它應該重新實例化它。有沒有更好的方法來檢查表單是否被加載?
欲瞭解更多信息請查看我的代碼或評論.. :)
public partial class Form1: Form
{
private Form2 form2;
public Form1() {
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e) {
if (form2== null) {
form2= new Form2();
} else {
if (form2.has_exited()) { // this is a private property
// that I set when Form2.Closing executes
form2.Dispose();
form2= new Form2();
}
}
form2.Show();
}
}
退房http://stackoverflow.com/questions/1403600/how-to-avoid-multiple-instances-of-windows-form-in-c-sharp – Matthew
你可以保持形式的實例永遠活着,永遠不會調用它的Close方法,而是隱藏它,然後使用Form2.Visible(true - > shown,false - > hidden) –
這些解決方案看起來都很不錯,但我不知道應該使用哪一個。我選擇正確的答案爲最多票數 – IEnumerable