MDI容器中的窗体关闭时需要触发事件

本文关键字:事件 窗体 MDI | 更新日期: 2023-09-27 18:25:48

我有一个多文档接口控件,其中嵌套了一些表单。当其中一个表单关闭时,我需要触发一个事件。如何绑定这样的事件?

如果重要的话,我需要运行的代码访问一个名为data的全局类,该类有一个称为Windows的公共静态属性,访问方式如下:

data.Windows -= 1;

MDI容器中的窗体关闭时需要触发事件

正如L.B所说:在表单类中创建一个覆盖。它可以放在类中的任何位置

protected override void OnClosing(CancelEventArgs e)数据Windows=-1//假设这个变量当时仍然存在}

以下是您的答案:

private void Form1_MdiChildActivate(object sender, EventArgs e)
{
    //form is new mdi child
    Form form = this.MdiChildren.Last();
    form.FormClosed += SenderForm_Close;
}
private void SenderForm_Close(object sender, EventArgs e)
{
    //form is new closed mdi child
    Form form = sender as Form;
}