TabPage的動態添加

在做這個的時候找到了一個第三方控件來製作。

DOTNETBAR.

使用其中的TabControl控件,主要屬性如下:

TabItem:添加一個新的標籤。

TabControlPanel:添加標籤的主體容器。

TabControlPanel.Controls.Add(控件)事件,向容器中添加組件。

tabItem.AttachedControl = panel 將容器添加到對應的標籤上。

但是後來發現第三方控件還是不如自己寫。

因爲我發現一個很大的問題:第三方控件添加雙擊關閉標籤事件的時候沒有相應的接口,而.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;

                tab.TabPages.Remove(seltab);
                tab.SelectedIndex = seltabindex - 1;

                return;
            }

        }
    }
}

----------------------其他----------------------

如何在.NET中調用記事本或者計算器:(引用命名空間:using System.Diagnostics;)

process.start("notepad.exe"); process.start("calc.exe");
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章