用 WeifenLuo.WinFormsUI 实现 VS2005 风格的多页签浏览器
2008-05-08 21:02
543 查看
效果图:
![](http://p.blog.csdn.net/images/p_blog_csdn_net/appframework/weifengluotab.jpg)
使用起来还比较简单,关键点说明:
1)在主窗口客户区放置一个DockPanel,设置如下事件:
// TAB切换时会触发的事件,在这里切换主窗口公用工具栏和状态条:
dockPanel.ActiveDocumentChanged += new EventHandler(dockPanel_ActiveDocumentChanged);
2)每个TAB标签实际上是一个Form,从 DockContent 派生(DockContent实际上从Form派生)
public partial class IETabForm : Form
{
}
3)添加一个页签
private IETabForm AddNewTab(DockPane pane)
{
IETabForm page = new IETabForm();
page.DockAreas = DockAreas.Document;//限制只能停靠在主窗口中间的文档区
if (pane == null || pane.Contents.Count < 1)
{
InitPane(pane, page);
}
else
{
page.Show(pane, GetBlankTab(pane));
}
return page;
}
private void InitPane(DockPane pane, IETabForm page)
{
if (pane == null)
{
page.Show(dockPanel);
pane = dockPanel.ActiveDocumentPane;
}
else
{
page.Show(pane, null);
}
AddBlankPage(pane); // 添加一个空白页签在最右侧(用于打开新页签)
}
其中DockPane表示一个停靠窗格,类似于 VS2005 如下两个Pane:
![](http://p.blog.csdn.net/images/p_blog_csdn_net/appframework/weifengluotab.jpg)
使用起来还比较简单,关键点说明:
1)在主窗口客户区放置一个DockPanel,设置如下事件:
// TAB切换时会触发的事件,在这里切换主窗口公用工具栏和状态条:
dockPanel.ActiveDocumentChanged += new EventHandler(dockPanel_ActiveDocumentChanged);
2)每个TAB标签实际上是一个Form,从 DockContent 派生(DockContent实际上从Form派生)
public partial class IETabForm : Form
{
}
3)添加一个页签
private IETabForm AddNewTab(DockPane pane)
{
IETabForm page = new IETabForm();
page.DockAreas = DockAreas.Document;//限制只能停靠在主窗口中间的文档区
if (pane == null || pane.Contents.Count < 1)
{
InitPane(pane, page);
}
else
{
page.Show(pane, GetBlankTab(pane));
}
return page;
}
private void InitPane(DockPane pane, IETabForm page)
{
if (pane == null)
{
page.Show(dockPanel);
pane = dockPanel.ActiveDocumentPane;
}
else
{
page.Show(pane, null);
}
AddBlankPage(pane); // 添加一个空白页签在最右侧(用于打开新页签)
}
其中DockPane表示一个停靠窗格,类似于 VS2005 如下两个Pane:
![](http://p.blog.csdn.net/images/p_blog_csdn_net/appframework/vsdockpane.jpg)
相关文章推荐
- C#中使用WeiFenLuo.WinFormsUI.Docking.dll实现窗口停靠效果
- C#中使用WeiFenLuo.WinFormsUI.Docking.dll实现窗口停靠效果
- WinForm界面开发之布局控件"WeifenLuo.WinFormsUI.Docking"的使用
- WeifenLuo.WinFormsUI.Docking的使用。
- 分享-WinForm界面开发之布局控件"WeifenLuo.WinFormsUI.Docking"的使用
- WinForm界面开发之布局控件\"WeifenLuo.WinFormsUI.Docking\"的使用
- WeifenLuo.WinFormsUI.Docking.dll使用
- WeifenLuo.WinFormsUI.Docking.dll使用
- WeiFenLuo.winFormsUI.Docking.dll的使用
- weiFenLuo.winFormsUI.Docking.dll
- [转]WeifenLuo.WinFormsUI.Docking——DockPanel的一点点改进
- WinForm界面开发之布局控件"WeifenLuo.WinFormsUI.Docking"的使用
- WinForm停靠控件介绍:WeifenLuo.WinFormsUI.Docking.dll
- Winform中DockPanel(引用WeifenLuo.WinFormsUI.Docking.dll组件)的使用
- WinForm界面开发之布局控件"WeifenLuo.WinFormsUI.Docking"的使用
- WeiFenLuo.winFormsUI.Docking.dll的使用(停靠效果)
- 再谈布局控件"WeifenLuo.WinFormsUI.Docking"的使用--如何控制自动停靠窗口的大小
- WinForm界面开发之布局控件"WeifenLuo.WinFormsUI.Docking"的使用
- C#.NET 窗体停靠控件WeifenLuo.WinFormsUI.Docking.dll的使用
- 使用DockPanel Suite进行程序窗口布局(WeifenLuo.WinFormsUI.Docking)