我把按钮放在父窗口上去儿童窗口。关闭子窗口我在按钮单击时使用this.close(),但我想通过子窗口的单击按钮关闭父窗口和子窗口。
答案 0 :(得分:2)
试试这个
If Child.ShowDialog = DialogResult.OK Then
Parent.close
End If
儿童表单关闭按钮
Me.diaglogresult=DialogResult.OK
答案 1 :(得分:1)
将父表单传递给子表单,并在已关闭的事件处理程序中调用其close方法。
答案 2 :(得分:0)
您可以从孩子那里关闭父表格,但对我来说似乎打破了封装原则。
另一种方法是从父级订阅子表单的已关闭事件,然后在父级中对此进行响应 - 请参阅Winform form closed event以获取实现。
答案 3 :(得分:0)
private void btnOpenForm_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2();
frm2.FormClosed += new FormClosedEventHandler(frm2_FormClosed);
frm2.Show();
this.Hide();
}
private void frm2_FormClosed(object sender, FormClosedEventArgs e)
{
this.Close();
}