下面的代码创建了一个带有文本TabPage的tab1
string tabTitle = "tab1";
TabPage createdtabpage = new TabPage(tabTitle);
tabControl1.TabPages.Add(createdtabpage);我希望使用我设置的字符串获得一个TabPage,然后选择它。也许是这样的:
//this will select the tab that has a title of "tab1"
this.tabControl1.SelectedTab = tabControl1.getTabByTitle(tabTitle);有办法实现这样的目标吗?
谢谢你的帮助。
发布于 2021-02-04 20:48:28
如果您可以为TabPage.Text属性和TabPage.Name属性分配相同的值,如果分配的文本与Name属性约束兼容(如问题中所示,当文本为"tab1"时),那么只需按名称选择TabPage:
string tabTitle = "tab1";
tabControl1.TabPages.Add(new TabPage(tabTitle));
// [...]
tabControl1.SelectedTab = tabControl1.TabPages[tabTitle];如果文本不兼容(如"This is TabPage1"),则可以使用LINQ的OfType()来选择指定文本的TabPage:
tabControl1.SelectedTab = tabControl1.TabPages.OfType<TabPage>()
.FirstOrDefault(tp => tp.Text == tabTitle);在这种情况下,如果找不到TabPage,FirstOrDefault()将返回null,TabControl将显示UI中没有选择的TabPage。
https://stackoverflow.com/questions/66052316
复制相似问题