3

我想知道如何在名称与特定字符串值匹配的名称中选择tabItem一个tabControl。我猜我将不得不进行某种搜索。

这是一个视觉示例:

string selectedTabItem = "TabItem";

//if there exists a Tab Item in this specific tab control
//with the above string as it's Name
//that Tab Item .IsSelected = true;
4

2 回答 2

6

假设您手动创建选项卡,而不是通过绑定,那么这应该可以工作:

tabControl.SelectedItem = tabControl.Items.OfType<TabItem>().SingleOrDefault(n => n.Name == selectedTabItem);
于 2013-08-16T14:30:44.400 回答
0
foreach (TabPage t in myTabControl.TabPages)
{
  if t.Name.Equals("something") 
  {
     myTabControl.SelectedTab = t;
     break;
  }
}

基本上,您可以遍历每个选项卡并查看名称是否与您的字符串匹配

在我看来,一个更好的方法是:

if (myTabControl.TabPages.ContainsKey("something"))
            myTabControl.SelectedTab = mytabControl.TabPages["something"];
于 2013-08-16T14:07:35.113 回答