我的最初解决方法是MDI窗口,但是有问题,我的导航条是类似VS导航条一样的,在左边,在点子窗口的时候刷的厉害,而且直接有个工具条一样的东西把我导航顶下去了,我设置了子窗口comtrolbox属性为false,不知道谁解决这个问题没.这是我控制窗口的代码:
#region 关闭当前窗口,打开新窗口
if (this.MdiChildren.Length > 0)
{
foreach (Form myFrm in this.MdiChildren)
{
myFrm.Close();
}
}
#endregion
switch ()
{
…………………………
}
}
闪的挺厉害的。不知道谁有没解决方法,设置窗口属性什么的。
或者有没谁能有象web里那样的代码,frame那样直接弹出窗口在右边,麻烦解决下,感激,如果有这种方法,请顺便贴出代码和窗口唯一性的控制
非常谢谢
#region 关闭当前窗口,打开新窗口
if (this.MdiChildren.Length > 0)
{
foreach (Form myFrm in this.MdiChildren)
{
myFrm.Close();
}
}
#endregion
switch ()
{
…………………………
}
}
闪的挺厉害的。不知道谁有没解决方法,设置窗口属性什么的。
或者有没谁能有象web里那样的代码,frame那样直接弹出窗口在右边,麻烦解决下,感激,如果有这种方法,请顺便贴出代码和窗口唯一性的控制
非常谢谢
private void CloseActiveMdiChild()
{
Application.DoEvents();
if (this.ActiveMdiChild != null)
{
this.ActiveMdiChild.Close(); //关闭已经打开的子窗体
}
}
这段代码#region 关闭当前窗口,打开新窗口
if (this.MdiChildren.Length > 0)
{
foreach (Form myFrm in this.MdiChildren)
{
myFrm.Close();
}
}
#endregion
再开开新的是没问题的
switch (e.Node.Name)
{
case "brand":
Material.Brand bd = new Material.Brand();
bd.MdiParent = this;
bd.StartPosition = FormStartPosition.Manual;
bd.Location = new Point(0, 0);
bd.Show();
bd.WindowState = FormWindowState.Maximized;
break;
case "productinfo":
Material.ComMaterial cm = new Material.ComMaterial();
cm.MdiParent = this;
cm.StartPosition = FormStartPosition.Manual;
cm.Location = new Point(0, 0);
cm.Show();
cm.WindowState = FormWindowState.Maximized;
break;
case "weighingtype":
Material.WeighType wt = new Material.WeighType();
wt.MdiParent = this;
wt.StartPosition = FormStartPosition.Manual;
wt.Location = new Point(0, 0);
wt.Show();
wt.WindowState = FormWindowState.Maximized;
break;
case "commnature":
Material.ComQuality cq = new Material.ComQuality();
cq.MdiParent = this;
cq.StartPosition = FormStartPosition.Manual;
cq.Location = new Point(0, 0);
cq.Show();
cq.WindowState = FormWindowState.Maximized;
break;
case "commproperty":
Material.ComAttribute ca = new Material.ComAttribute();
ca.MdiParent = this;
ca.StartPosition = FormStartPosition.Manual;
ca.Location = new Point(0, 0);
ca.Show();
ca.WindowState = FormWindowState.Maximized;
break;
}
在创建MDI窗体的时候直接创建MDI窗体即可