WinForm停靠控件介绍:WeifenLuo.WinFormsUI.Docking.dll

WeifenLuo.WinFormsUI.Docking.dll是一个WinForm界面布局控件,这个控件简单易用且强大。

 

接下来以在CLR中使用该控件进行界面布局为例来说明其使用过程:

1. 首先在网上下载WeifenLuo.WinFormsUI.Docking.dll文件

2. VS中新建CLR下的Windows Forms Application工程,然后在项目中引入该控件,步骤是:(1)在工程的References中添加该DLL的引用;(2)在工具箱中显示添加该控件:右键ToolBox空白处,选择“Choose Items”,点击“Browse…”,选中你本地的WeifenLuo.WinFormsUI.Docking.dll文件,点击“打开”,单机“OK”,这时候ToolBoxGeneral下会多出一个名为DockPanel的控件项,记为我们将要使用的布局控件。

3. 在工程中Add几个Form窗体,分别命名为FormLeftFormRightFormBottomFormFill,我们将把他们分别布局在主窗体(新建工程时默认创建的窗体,默认命名为Form1)的左边、右边、下面和中间。

4. DockPanel控件拖放入Form1窗体,名字采用默认的dockPanel1,将其Dock属性调整为Fill。将Form1IsMdiContainer设置为True,表示设置为多文档窗体。

5.  FormLeft的代码中添加对布局控件的引用:

using namespace WeifenLuo::WinFormsUI::Docking;

在代码中手动将class FormLeft的基类改成DockContent。在FormLeft的窗体属性中将ShowHint设为DockLeftShowHint决定了窗体停靠的位置。

FormLeft窗体的BackColor换个颜色以示区分。

FormRightFormButton作类似的操作,分别设置停靠位置为DockRightDockBottom

FormFill窗体用于放置在中间位置,其属性设置为:DockAreas: Document(手动修改)、HideOnCloseTrueShowHintDocument

6. 在主窗体Form1中添加这几个停靠窗口:

首先引入头文件

#include "FormLeft.h"

#include "FormRight.h"

#include "FormBottom.h"

#include "FormFill.h"

然后定义停靠窗体对象:

    private:

       FormLeft^ m_formLeft;

       FormRight^ m_formRight;

       FormBottom^ m_formBottom;

    FormFill^ m_formFill;

然后在构造函数中:

       Form1(void)

       {

           InitializeComponent();

           //

           //TODO: Add the constructor code here

           //

           m_formLeft = gcnew FormLeft();

           m_formRight = gcnew FormRight();

           m_formBottom = gcnew FormBottom();

           m_formFill = gcnew FormFill();

           m_formFill->Show(dockPanel1);

           m_formLeft->Show(dockPanel1);

           m_formRight->Show(dockPanel1);

           m_formBottom->Show(dockPanel1);

    }

7.   运行程序,截图:

原文地址:https://www.cnblogs.com/sifenkesi/p/2117201.html