C#:按名称添加TabControl选项卡

时间:2011-09-12 10:55:21

标签: c# tabcontrol

我有使用TabControl的表单。我可以通过执行以下操作添加Tab:

TabControl.TabPages.Add(TabPage)

TabPage是我所拥有的标签页之一的名称。

我想做

TabControl.TabPages.Add("TabPage")

TabPage是String对象。

我怎样才能做到这一点?

4 个答案:

答案 0 :(得分:1)

赦免?你没有。 TabControlTabPage个对象的集合。但是,您可以为TabPage提供一个可用于引用它的名称。

因此,如果你想选择或删除一个标签页,你可以做这样的事情(请原谅我的应用程序修改过的令人讨厌的代码,我不得不记录它 - 重构它以简化它):

private void ConfigureTabs()
{
    var config = GetConfig();

    foreach (TabPage tabPage in tabControl.TabPages)
    {
        if (config.IsTabVisible(tabPage.Name) == false)
        {
            tabControl.TabPages.Remove(tabPage);
        }
    }

    if (tabControl.TabPages.ContainsKey(config.DefaultTabName))
    {
        tabControl.SelectTab(config.DefaultTabName);
    }
}

答案 1 :(得分:1)

步骤

1-选择整个Tab控件 2-在属性窗口(位于右侧) - >标签页 - >点击 (...) 。 3-一次1& 2完成后你会看到所有标签...然后你可以改变文字上的名字..

我希望有帮助.. 此致

答案 2 :(得分:0)

转到TabControl的属性..然后转到TabPages ..单击(集合)..现在您可以在TEXT字段中编辑选项卡的名称。

答案 3 :(得分:0)

如果要添加的选项卡不在任何控件层次结构中,则无法进行。但是,如果选项卡位于表单中的其他位置,则可以编写Extension Method,找到您指定的TabPage并将其添加到TabControl的TabCollection中。像这样:

public void AddEx(this TabCollection tabs, string name)
{
  var myTabPage = MyFindTabPageMethod(name);
  tabs.Add(myTabPage);    
}

因此,如果TabPage位于其他TabCollection中,并且您希望将其“移动”到其他位置,则上述内容应该有效。

现在你可以做到:

TabControl.TabPages.AddEx("TabPage");