在父窗口中由第一个子窗体打开时关闭第二个子窗体

本文关键字:窗体 第二个 第一个 窗口 | 更新日期: 2023-09-27 18:37:02

>我正在父窗体中编写以下代码,一次只打开 1 个子窗体,当我从parent form打开child form时它工作正常

public void OpenForm(Form toOpen)
            {
                foreach (Form child in MdiChildren)
                    child.Close();
                toOpen.MdiParent = this;
                toOpen.Show();
            } 
private void btnExam_Click(object sender, EventArgs e)
        {
            OpenForm(new ChooseExam(LoginName));            
        } 

但是当我从1st child form打开2nd child form时,那个时候在我的parent window这两个子窗体同时出现,现在我如何在通过它打开2nd child form时关闭first child form,并且在第二个窗体的后退按钮中我怎么能看到第一个子窗体回来
我用这行代码尝试了上述相同的代码toOpen.MdiParent = this.ParentForm ;子形式,但我仍然可以看到两个子形式,我该怎么做?

在父窗口中由第一个子窗体打开时关闭第二个子窗体

您不能关闭first child form,因为您还将关闭second child form。如果关闭父窗体,则正在关闭子窗体。您可以做的是隐藏它:

firstChildForm.Hide();

当您想看它时:

firstChildForm.Show();