我在Winform的应用程序中有一个TabControl, 我必须禁用第二个选项卡,只有在我的第一页上执行某些操作后才会启用它。 我通过代码禁用标签
实现了这一目标tabControl1.TabPages[1].Enabled = false;
但我希望隐藏该标签,或者单击标签本身应该被禁用。
答案 0 :(得分:0)
你问过两个问题:
如何隐藏TabPage
如何使其不可选择
你无法隐藏TabPage
;最接近和最简单的解决方案是将其从原始Tab
控件中删除,并将其添加到隐藏的帮助器Tab
控件中:
tabPage3.Parent = helperTab;
要使其不可选,请对Selecting
控件的Tab
事件进行编码。您需要设置一个标志,可能在页面的Tag
中,然后您可以阻止设置标志的页面被选中:
private void tabControl1_Selecting(object sender, TabControlCancelEventArgs e)
{
if (e.TabPage.Tag == "X") e.Cancel = true;
}
答案 1 :(得分:0)
试试这个。它将隐藏并显示TabPages而不会丢失控件。
隐藏TabPage并删除标题:
this.tabPage1.Hide();
this.tabPage3.Hide();
this.tabPage5.Hide();
tabControl1.TabPages.Remove(tabPage1);
tabControl1.TabPages.Remove(tabPage3);
tabControl1.TabPages.Remove(tabPage5);
显示标签页并显示标题:
tabControl1.TabPages.Insert(0,tabPage1);
tabControl1.TabPages.Insert(2, tabPage3);
tabControl1.TabPages.Insert(4, tabPage5);
this.tabPage1.Show();
this.tabPage3.Show();
this.tabPage5.Show();
tabControl1.SelectedTab = tabPage1;