MDI-多文档窗体

1、IsMdicontainer属性设置是否为多文档窗体

this.IsMdiContainer = true;

2、MdiParent属性设置为父窗体

Frm_Child frm = new Frm_Child();//实例化子窗体对象
frm.MdiParent = this;//设置子窗体的父窗体为当前窗体
frm.Show();//显示子窗体
Frm_Child frm = new Frm_Child();//实例化子窗体对象
frm.MdiParent = this;//设置子窗体的父窗体为当前窗体
frm.WindowState = FormWindowState.Maximized;//设置子窗体最大化显示
frm.Show();//显示子窗体

3、LayoutMdi()方法设置为子窗体的排列

        private void 加载子窗体ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Frm_ChildOne frm2 = new Frm_ChildOne();//实例化Frm_ChildOne
            frm2.MdiParent = this;//设置MdiParent属性,将当前窗体作为父窗体
            frm2.Show();//使用Show方法打开窗体
            Frm_ChildTwo frm3 = new Frm_ChildTwo();//实例化Frm_ChildTwo
            frm3.MdiParent = this;//设置MdiParent属性,将当前窗体作为父窗体
            frm3.Show();//使用Show方法打开窗体
            Frm_ChildThree frm4 = new Frm_ChildThree();//实例化Frm_ChildThree
            frm4.MdiParent = this;//设置MdiParent属性,将当前窗体作为父窗体
            frm4.Show();//使用Show方法打开窗体
        }

        private void 水平平铺ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            LayoutMdi(MdiLayout.TileHorizontal);//使用MdiLayout枚举实现窗体的水平平铺
        }
        private void 垂直平铺ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            LayoutMdi(MdiLayout.TileVertical);//使用MdiLayout枚举实现窗体的垂直平铺
        }
         private void 层叠排列ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            LayoutMdi(MdiLayout.Cascade);//使用MdiLayout枚举实现窗体的层叠排列
        }

4、继承窗体的使用

(1)添加新建项->继承窗体   在此之前必须先对父窗体生成一下

(2)代码实现 public partial class Form1 : MDI相关.Form_Main

5、设置父窗体中控件的Modifiers属性为public

原文地址:https://www.cnblogs.com/chenyongblog/p/3234026.html