C# - 关闭一个特定 MdiChild 时 MdiParent 中的启动方法

本文关键字:MdiChild MdiParent 方法 启动 一个 | 更新日期: 2023-09-27 18:34:11

我实际上是在学校用.net构建一个程序。这是我第一次使用它,我有一个问题。

我得到了一个MdiParent表格,它有两个MdiChildren:一个config表格和一个文章列表表格。填写config表单时,应显示文章列表。

我实际上在MdiParent中使用了这种方法:

private void MotherMdi_MdiChildActivate(object sender, System.EventArgs e)
{
    ...;
}

但是我需要处理多个变量,因为每次打开或关闭mdichild时都会触发此方法......

有没有办法仅在 One MdiChild关闭时调用特定方法?

多谢。

C# - 关闭一个特定 MdiChild 时 MdiParent 中的启动方法

每次关闭窗口窗体时都会引发事件FormClosing。您可以处理该事件并执行在表单关闭时需要执行的处理。

在父窗体中:

private void ParentForm_Load(object sender, EventArgs e)
        {
            ChildForm childForm = new ChildForm();
            childForm.childFormClosed += childForm_childFormClosed;
        }
        void childForm_childFormClosed(object sender, FormClosedEventArgs e)
        {
            // Handle processing here
        }

在子窗体中:

public event EventHandler<FormClosingEventArgs> childFormClosed;
        private void ChildForm_FormClosing(object sender, FormClosingEventArgs e)
        {
            if (childFormClosed != null)
            {
                childFormClosed(sender, e);
            }
        }

如果需要,您可能需要使用FormClosed

如果要传递比FormClosingEventArgs执行的操作更多的信息,也可以使用自己的继承类。