为了账号安全,请及时绑定邮箱和手机立即绑定

在tabControl中隐藏和显示TabPages

在tabControl中隐藏和显示TabPages

人到中年有点甜 2019-11-04 10:17:01
我正在尝试根据用户选择显示或隐藏选项卡。如果用户选择性别男性然后形成用于在标签页“男性”应显示,并且如果用户选择了女性然后类似未来形式雄性应显示在下一个标签“女性”我尝试使用tabControl1.TabPages.Remove(...)和tabControl1.TabPages.Add(...)它添加和删除了标签页,但是这样做也会使我对标签页的控件失去控制...我看不到它们。这里有什么问题吗?
查看完整描述

3 回答

?
红颜莎娜

TA贡献1842条经验 获得超12个赞

您可以从TabControl.TabPages集合中删除选项卡页,并将其存储在列表中。例如:


    private List<TabPage> hiddenPages = new List<TabPage>();


    private void EnablePage(TabPage page, bool enable) {

        if (enable) {

            tabControl1.TabPages.Add(page);

            hiddenPages.Remove(page);

        }

        else {

            tabControl1.TabPages.Remove(page);

            hiddenPages.Add(page);

        }

    }


    protected override void OnFormClosed(FormClosedEventArgs e) {

        foreach (var page in hiddenPages) page.Dispose();

        base.OnFormClosed(e);

    }


查看完整回答
反对 回复 2019-11-04
?
犯罪嫌疑人X

TA贡献2080条经验 获得超4个赞

我认为答案要容易得多。


要隐藏选项卡,您可以使用已尝试的方式或处理TabPage本身。


TabControl1.TabPages.Remove(TabPage1) 'Could be male

TabControl1.TabPages.Remove(TabPage2) 'Could be female

麻生


删除TabPage不会破坏它及其上的控件。要再次显示相应的标签,只需使用以下代码


TabControl1.TabPages.Insert(0, TabPage1) 'Show male

TabControl1.TabPages.Insert(1, TabPage2) 'Show female


查看完整回答
反对 回复 2019-11-04
  • 3 回答
  • 0 关注
  • 981 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信