繁体   English   中英

如何将TabControl选项卡设置为不可见

[英]how to set a TabControl tab to be invisible

在使用VS2005的C#中,我有一个带有7个选项卡的Winforms TabControl,但是我希望仅在设置了某个配置选项后才能显示最后一个选项卡。

如何使TabControl仅显示前六个标签? 换句话说,如何使第七个标签不可见?

private void HideTab(object sender, EventArgs e)
{
    this.tabControl1.TabPages.Remove(this.tabPage2);
}
private void ShowTab(object sender, EventArgs e)
{
    this.tabControl1.TabPages.Add(this.tabPage2);
}

this.tabPage2是您的第7个标签页,无论您使用什么名称。

不可能在tabcontrol中隐藏选项卡。 如果要添加选项卡,请在运行时满足条件,然后不要添加第7个选项卡。

如果您在设计时完成操作,则如果处理失败,请删除该选项卡。

yourTabControl.TabPages.Remove(tabPageName);

你可以实现一个属性

public bool TabVisible
{
    get 
    {
        return tabControl1.Contains(tabPage2);
    }
    set
    { 
        if(value == TabVisible) return;
        if(value)
            tabControl1.TabPages.Add(tabPage2);
        else
            tabControl1.TabPages.Remove(tabPage2);
    }
}

您还应该覆盖您的处置功能,

您可以将Dispose函数从设计人员生成的代码移至您自己的代码,设计人员会注意到这一点。 您会看到components.Dispose(); 函数无法再到达tabPage进行处理,因此,如果尚未处理,则需要手动进行处理。 否则,尤其是如果您多次打开窗户,窗把手就会用完

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM