问题
I would like to know how to select a tabItem
in a tabControl
whose name matches a specific string value. I'm guessing that I will have to do some sort of search.
Here's a visual example:
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;
回答1:
Assuming that you create your tabs manually, and not via bindings, then this should work:
tabControl.SelectedItem = tabControl.Items.OfType<TabItem>().SingleOrDefault(n => n.Name == selectedTabItem);
回答2:
foreach (TabPage t in myTabControl.TabPages)
{
if t.Name.Equals("something")
{
myTabControl.SelectedTab = t;
break;
}
}
Basically you can loop through each tab and and see if the name matches your string
a better way to do it in my opinion is:
if (myTabControl.TabPages.ContainsKey("something"))
myTabControl.SelectedTab = mytabControl.TabPages["something"];
来源:https://stackoverflow.com/questions/18275145/search-through-tab-control-for-specific-tab-item-based-on-a-string-value