下面是我的表單是如何 - Form1是第一種形式。從Form1我通過使用showdialog
方法移動到Form2(Form1位於後臺,Form2位於頂部)。現在單擊Form2上的一個按鈕,將顯示一個messagebox
(請注意,Form1仍處於後臺)。 Messagebox
只有確定按鈕。現在,當我按OK
我想加載Form3並想要關閉Form2和Form1。我怎樣才能關閉Form2和Form1?我在窗體2使用此代碼:從消息框中關閉所需的表單! (c#)
private void button1_Click(object sender, EventArgs e)
{
if (...)
{
MessageBox.Show("hello");
this.DialogResult = DialogResult.OK;
this.Close();
Form3 frm = new Form3();
frm.ShowDialog();
}
}
此方法不會關閉窗體2和Form1上,但Form3的表現。所以我在Form2中試過這個:
private void button1_Click(object sender, EventArgs e)
{
if (...)
{
if (MessageBox.Show("hello") == DialogResult.OK)
{
this.Close();
Form3 frm = new Form3();
frm.ShowDialog();
}
}
}
這兩個表格還沒有關閉。我嘗試在MessageBox.Show
下調用公共關閉方法(Form1和Form2中的this.Close
)在Form1和Form2中從Form2中創建。仍然沒有工作。如何擺脫這兩種形式與消息框的確定按鈕?
謝謝。簡單但棘手..請留下代碼片段。我不明白的技術術語不幸:-(
看起來您應該只在所有其他代碼執行後關閉表單。也許試試看,並在你的條件塊的末尾調用'this.Close()'。 – 2011-03-29 13:09:44