欢迎大家提出意见,一起讨论!
转载请标明是引用于 http://blog.csdn.net/chenyujing1234
代码(VS2008):
http://www.rayfile.com/zh-cn/files/f4235a26-9aa8-11e1-bd9f-0015c55db73d/
关键技术
主要通过LayoutMdi传递MdiLayout.Cascade枚举值来实现子窗体的层叠排列。
设计过程
(1)将主窗体的IsMdiContainer属性设置为true,以便作为父窗体。在主窗体中添加一个MenuScrip控件,用来作为窗体的菜单栏。
(2)在项目中添加3个Windows窗体,并将其命名为XXX ......
(3)程序的主要代码如下:
private void 加载子窗体ToolStripMenuItem_Click(object sender, EventArgs e)
{
Frm_ChildOne frm2 = new Frm_ChildOne();//实例化Frm_ChildOne
frm2.MdiParent = this;//设置MdiParent属性,将当前窗体作为父窗体
frm2.Show();//使用Show方法打开窗体
Frm_Two frm3 = new Frm_Two();//实例化Frm_ChildTwo
frm3.MdiParent = this;//设置MdiParent属性,将当前窗体作为父窗体
frm3.Show();//使用Show方法打开窗体
Frm_Three frm4 = new Frm_Three();//实例化Frm_ChildThree
frm4.MdiParent = this;//设置MdiParent属性,将当前窗体作为父窗体
frm4.Show();//使用Show方法打开窗体
}
private void 层叠排列ToolStripMenuItem_Click(object sender, EventArgs e)
{
LayoutMdi(MdiLayout.Cascade);// //使用MdiLayout枚举实现窗体的层叠排列
}
![](https://img-my.csdn.net/uploads/201205/10/1336658510_3740.jpg)
大家可以看到所有的子窗体都在你窗体中显示,并且不能移出父窗体框架区域。