在作这个的时候找到了一个第三方控件来制做。ide
DOTNETBAR.this
使用其中的TabControl控件,主要属性以下:code
TabItem:添加一个新的标签。blog
TabControlPanel:添加标签的主体容器。接口
TabControlPanel.Controls.Add(控件)事件,向容器中添加组件。事件
tabItem.AttachedControl = panel 将容器添加到对应的标签上。it
可是后来发现第三方控件仍是不如本身写。class
由于我发现一个很大的问题:第三方控件添加双击关闭标签事件的时候没有相应的接口,而.NET自带的TabControl却很方便。容器
//双击删除标签
private void tabControl1_MouseDoubleClick(object sender, MouseEventArgs e)
{
TabControl tab = (TabControl)sender;
Point pt = new Point(e.X,e.Y);
if (tab.TabPages.Count > 1)
{
for (int i = 0; i < tab.TabPages.Count; i++)
{
Rectangle recTab = tab.GetTabRect(i);
if (recTab.Contains(pt))
{
TabPage seltab = this.tabControl1.SelectedTab;
int seltabindex = this.tabControl1.SelectedIndex; object
tab.TabPages.Remove(seltab);
tab.SelectedIndex = seltabindex - 1;
return;
}
}
}
}
----------------------其余----------------------
如何在.NET中调用记事本或者计算器:(引用命名空间:using System.Diagnostics;)
process.start("notepad.exe"); process.start("calc.exe");