zoukankan      html  css  js  c++  java
  • WinForm界面布局空间WeifenLuo.WinformUI.Docking


    最近在学习Sharpdevelop的过程中,看到了使用的很好的winform页面布局控件,感觉非常的不错。实现效果如下所示:  这里我就简单的下一下他的实现步骤,当中我也看考了其他人的博客。 
    1) 创建一个windows Form的应用程序
    2) 添加引用:WeifenLuo.WinFormsUI.Docking他是一个DLL文件,可以自行从网络上下载。
    3) 设置Form1窗体作为父窗体容器。设置它的:isMdiContainer属性为:true
    4) 工具箱—>右键—>选择项—>.net组件—>浏览—>weiFenLuo.winFormsUI.Docking.dll—>在工具箱出现dockPanel  
    5) 将DockPanel控件拖放到Form1窗体中,并设置它的dock属性为Fill
    6) 添加一个新的Form窗体,命名为child_1,进入后台代码,添加下面的命名空间:using WeifenLuo.WinFormsUI.Docking;修改child_1窗体集成的基类为:DockContentpublic partial class child_1 :DockContent
    7) 同理创建另一个新窗体,命名为child_2,后面的操作同child_1相同,都是添加命名空间,以及修改继承的基类
    8) 进入form1的后台代码,在他的窗体加载事件中添加如下的代码
    private void Form1_Load(object sender, EventArgs e)        
    {            
      
      child_1 b = new child_1();            
      b.Show(this.dockPanel1);            
      b.DockTo(this.dockPanel1, DockStyle.Fill);            
      child_2 c = new child_2();            
      c.Show(this.dockPanel1);            
      c.DockTo(this.dockPanel1, DockStyle.None);
    }
    

      

    9) 运行程序,效果如上图所示。PS:这里仅仅是简单的介绍了一下如何创建类似的布局。还有很多的东西需要在深入的学习。PS: b.DockTo(this.dockPanel1, DockStyle.Fill);该行代码是设置子窗体的停靠方式的,这里设置的停靠方式为Fill,不过该控件还有其他的停靠方式:比如:bottom,left,top,right,none等方式,我们设置不同的属性,就会有不同的停靠效果。
  • 相关阅读:
    【nginx】常见的陷阱和错误
    linux配置文件的一些调优
    关于防刷票的一些问题
    关于nginx的限速模块
    使用Javascript监控前端相关数据
    【mysql】关于Index Condition Pushdown特性
    【mysql】关于临时表
    堆和栈的区别(转过无数次的文章)
    深入PHP内核之in_array
    【mysql】索引的优化
  • 原文地址:https://www.cnblogs.com/nocoding/p/2844116.html
Copyright © 2011-2022 走看看