我不希望click多次,就出来多个窗口。所以需要在click之前关闭之前打开的子窗口
    我使用了
            if (this.ActiveMdiChild != null)
                {
                    Form activeChild = this.ActiveMdiChild;
                    activeChild.Close();
                }
但是好像没有起到这个作用的样子。

解决方案 »

  1.   

    判断子窗体中是否存在要打开的窗体,存在则激活
    FrmNew frm=new FrmNew();//FrmNew为要打开的窗体类
    Form[] frms = this.MdiChildren;
                foreach (Form f in frms)
                {
                    if (f.Name == frm.Name)
                    {
                        f.Activate(); 
                        return;
                    }
                }
    frm.Show();