您的位置:首页 > 产品设计 > UI/UE

用 WeifenLuo.WinFormsUI 实现 VS2005 风格的多页签浏览器

2008-05-08 21:02 543 查看
效果图:



使用起来还比较简单,关键点说明:

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:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: