的WinForms; 检测形式从另一种形式关闭

K. *_*nki 3 c# forms winforms

是否可以检测从另一个表单关闭的表单.例如.如果我有一个打开subForm的mainForm,我可以在mainForm中检测到subForm已关闭并执行代码吗?

我知道我可以在subForm中创建一个事件处理程序,但这并不是我真正想要的,因为在subForm关闭之后我将要做的是在mainForm中(对mainForm的更改).

jas*_*ith 8

FormClosed事件是公共的,因此您可以从主窗体创建处理程序.

//Inside main Form.  Click button to open new form
private void button1_Click(object sender, EventArgs e)
{
      Form2 f2 = new Form2();
      f2.FormClosed += F2_FormClosed;
      f2.Show();
}

private void F2_FormClosed(object sender, FormClosedEventArgs e)
{
    MessageBox.Show("Form was closed");
}
Run Code Online (Sandbox Code Playgroud)