WeifenLuo.WinFormsUI.Docking.dll是一个WinForm界面布局控件,这个控件简单易用且强大。
例子:
1. 首先在网上下载WeifenLuo.WinFormsUI.Docking.dll文件
2. 在VS中新建Windows Forms Application工程,然后在项目中引入该控件,步骤是:
(1)在工程的References中添加该DLL的引用;
(2)在工具箱中显示添加该控件:右键ToolBox空白处,选择“Choose Items”,点击“Browse…”,选中你本地的WeifenLuo.WinFormsUI.Docking.dll文件,点击“打开”,单机“OK”,这时候ToolBox的General下会多出一个名为DockPanel的控件项,即为我们将要使用的布局控件。
3. 在工程中Add几个Form窗体,分别命名为FormLeft、FormRight、FormBottom、FormFill,我们将把他们分别布局在主窗体(新建工程时默认创建的窗体,默认命名为Form1)的左边、右边、下面和中间。
4. 将DockPanel控件拖放入Form1窗体,名字采用默认的dockPanel1,将其Dock属性调整为Fill。将Form1的IsMdiContainer设置为True,表示设置为多文档窗体。
5. 在FormLeft的代码中添加对布局控件的引用:
using namespace WeifenLuo::WinFormsUI::Docking;
在代码中手动将class FormLeft的基类改成DockContent。在FormLeft的窗体属性中将ShowHint设为DockLeft,ShowHint决定了窗体停靠的位置。将FormLeft窗体的BackColor换个颜色以示区分。
6. 对FormRight、FormButton作类似的操作,分别设置停靠位置为DockRight和DockBottom。
FormFill窗体用于放置在中间位置,其属性设置为:DockAreas: Document(手动修改)、HideOnClose:True、ShowHint:Document。
7. 在主窗体Form1中添加这几个停靠窗口:
private:
FormLeft m_formLeft;
FormRight m_formRight;
FormBottom m_formBottom;
FormFill m_formFill;
然后在构造函数中:
Form1(void)
{
InitializeComponent();
m_formLeft = new FormLeft();
m_formRight = new FormRight();
m_formBottom = new FormBottom();
m_formFill = new FormFill();
m_formFill.Show(dockPanel1);
m_formLeft.Show(dockPanel1);
m_formRight.Show(dockPanel1);
m_formBottom.Show(dockPanel1);
}
7. 运行程序,截图: