• winform窗体 控件【MDI 窗体容器】


      MDI :窗体容器

                                                   -- 在窗体中放置窗体

    属性

    IsMdiContainer  : 是否是窗体          -- 只有 Form 有此属性

       Form2 f2 = new Form2();

      f2.MdiParent = this;                                                          -- 获取或设置此窗体的父窗体 

      f2.WindowState = FormWindowState.Maximized;          --在后台设置窗体最大化  

      f2.Parent = panel1;                        -- 获取或设置此控件的父容器(放置了 panel 来布局要将窗体放到 panel 上面) 

      f2.Show();

    案例

            List<Form> FormList = new List<Form>();
    
            private void 销售模块ToolStripMenuItem_Click(object sender, EventArgs e)
            {
                bool has = false;
                Form2 f2 = new Form2();
    
                foreach (Form f in FormList)
                {
                    if (f is Form2)
                    {
                        has = true;
                        f2 = f as Form2;
                    }
                }
    
                if (has == false)
                {
                    f2.MdiParent = this;
                    f2.WindowState = FormWindowState.Maximized;
                    f2.Parent = panel1;
                    f2.Show();
                    FormList.Add(f2);
                }
                else
                {
                    foreach (Form f in FormList)
                    {
                        f.Hide();
                    }
                    f2.Show();
                }
            }
    
            private void 仓库模块ToolStripMenuItem_Click(object sender, EventArgs e)
            {
                bool has = false;
                Form3 f3 = new Form3();
    
                foreach (Form f in FormList)
                {
                    if (f is Form3)
                    {
                        has = true;
                        f3 = f as Form3;
                    }
                }
    
                if (has == false)
                {
                    f3.MdiParent = this;
                    f3.WindowState = FormWindowState.Maximized;
                    f3.Parent = panel1;
                    f3.Show();
                    FormList.Add(f3);
                }
                else
                {
                    foreach (Form f in FormList)
                    {
                        f.Hide();
                    }
                    f3.Show();
                }
            }
    
            private void 财务模块ToolStripMenuItem_Click(object sender, EventArgs e)
            {
                Form4 f4 = new Form4();
                f4.MdiParent = this;
                f4.WindowState = FormWindowState.Maximized;
                f4.Parent = panel1;
                f4.Show();
            }
    View Code

    销售模块 与 仓库模块 使用 MID 容器并且打开单一窗体

    财务模:使用 MID 容器

  • 相关阅读:
    ACTIVE OBJECT 模式
    Node.js
    WordPress — 突破性能瓶颈,使用 WordPress 站群做 SEO 推广
    HttpRequest.Item 属性 和 HttpRequest.QueryString 属性的区别!
    Regex.Replace 方法的性能!(090625最新修改)
    FACTORY 模式
    Indexof String By Byte[]
    [11]DIP:依赖倒置原则
    C#.Net Winform skin 皮肤 大全(转)
    C# 情缘
  • 原文地址:https://www.cnblogs.com/Tanghongchang/p/6817261.html
Copyright © 2020-2023  润新知