• C# WinForm MDI左右分栏 多文档


    1.主要用到的控件TreeViewSplitter,把父窗口IsMdiContainer设为True。子窗体StartPosition=Manual,效果如图

    用Splitter把父窗口分两个部分,左边放treeview,右边显示子窗体。

    打开子窗口代码

    代码
                Form childForm = new Form();
                childForm.MdiParent 
    = this;
                childForm.Text 
    = "Window " + childFormNumber++;
                childForm.Show();
    代码
      private void menu3_Click(object sender, EventArgs e)
      {
                
    //如果当前有子窗口打开,关闭当前的窗口
                if (this.MdiChildren.Length > 0)
                {
                    
    this.ActiveMdiChild.Close();
                }

                DataBillSystem.ReWork.FrmReWork frmReWork 
    = new DataBillSystem.ReWork.FrmReWork();
                frmReWork.MdiParent 
    = this;
                frmReWork.Show();
      }

    检查当前打开的窗口

    代码

    有时候我们需要在子窗体显示的时候就是最大化(也就是填充了整个父窗体),但通常会遇到以下麻烦: 如果在 Visual Studio 2010里通过属性工具栏设定了子窗体的 WindowState 为 Maximized,然后在运行过程中会发现子窗体实例化时不会最大化,而是当改变了父窗体的大小之后才随即最大化。而通过在子窗体的构造器里添加代码的方式也无济于事。

    解决办法:

    取消设置 WindowState 的值(改回默认的 Normal ),然后在实例化子窗体之后用代码设置它的WindowState即可,代码:

    C#

    frmMDIChild child = new frmMDIChild();

    child.MdiParent = this;

    child.WindowState = FormWindowState.Maximized;

    child.Show();

  • 相关阅读:
    将十六进制数组转换为字符串
    TEA(Tiny Encryption Algorithm)
    Install Atom editor in ubuntu 14.04
    Install Sublime Text 3
    测试键盘的控制字符对应的ASCII码值
    Linux 文件访问权限
    Linux 关机命令
    数据创建命令
    关键词
    MySQL命令总汇
  • 原文地址:https://www.cnblogs.com/ike_li/p/1613507.html
Copyright © 2020-2023  润新知