如何解决按标签/文本选择 TabPage
我有以下代码可以创建一个带有文本 tab1
的 TabPage:
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);
有没有办法完成这样的事情?
感谢您的帮助。
解决方法
如果您可以为 TabPage.Text
属性和 TabPage.Name
属性分配相同的值,以防分配的 Text 与 Name 属性约束兼容(就像 Text 为 {{1} },如问题所示),然后只需按名称选择 TabPage:
"tab1"
如果 Text 不兼容(如 string tabTitle = "tab1";
tabControl1.TabPages.Add(new TabPage(tabTitle));
// [...]
tabControl1.SelectedTab = tabControl1.TabPages[tabTitle];
),那么您可以使用 LINQ 的 OfType() 选择具有指定 Text 的 TabPage:
"This is TabPage1"
在这种情况下,如果没有找到 TabPage,FirstOrDefault() 将返回 tabControl1.SelectedTab = tabControl1.TabPages.OfType<TabPage>()
.FirstOrDefault(tp => tp.Text == tabTitle);
,并且 TabControl 将不会在 UI 中显示选择的 TabPage。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。