这是有一个多文档窗体,其中有一个主窗体mainform,还有多个子窗体childredform1,childrenform2,childrenform3,childrenform4
。可以在这个主窗体中打开多个子窗体,但是只有一个是当前活动窗体,
并且还要可以循环调用这几个子窗体,请高手指点一下这个代码要怎么写
????????????
。可以在这个主窗体中打开多个子窗体,但是只有一个是当前活动窗体,
并且还要可以循环调用这几个子窗体,请高手指点一下这个代码要怎么写
????????????
然后child1 cd1 = new child();
cd1.mdiparent = this;
cd1.show();
大概就是这样的了,不知道你具体的问题。
但是相同的子窗体只能存在一个……就是这样的
楼主可以用了窗体的name属性来判断。
以下给出代码:公共方法:
private bool checkChildFrmExist(string childFrmName)
{
foreach (Form childFrm in this.MdiChildren)
{
if (childFrm.Name == childFrmName) //用子窗体的Name进行判断是否已实例化,如果存在则将他激活
{
if (childFrm.WindowState == FormWindowState.Minimized)
childFrm.WindowState = FormWindowState.Normal;
childFrm.Activate();
return true;
}
}
return false;
}以下是调用 from subform = new from()
if (!checkChildFrmExist(subform.Name.ToString()))
{
subform.MdiParent = this;
subform.Show();
}
然后再调用的时候只要调用Show或Hide
public form1 form1;
public form2 form2;
private button1_click()
{
if ( form1 == null || form1.IsDisposed )
{
form1 = new Form1 ();
} form1.Show();
}
form2同上