单击c#

时间:2017-03-27 17:01:32

标签: c# mysql visual-studio

我在我的windows应用程序中插入了tab-control。它有4个标签页。当我点击相关按钮时,我想只显示相关的标签页。我的代码如下

 private void Form1_Load(object sender, EventArgs e)
    {
        tabControl1.TabPages.Remove(tabPage1);
        tabControl1.TabPages.Remove(tabPage2);
        tabControl1.TabPages.Remove(tabPage3);
        tabControl1.TabPages.Remove(tabPage4);
        this.tabPage1.Hide();
        this.tabPage2.Hide();
        this.tabPage3.Hide();
        this.tabPage4.Hide();

    }

首先在表单加载时删除每个标签页

这是按钮点击的代码,我为4个按钮编码......

private void button2_Click(object sender, EventArgs e){

 tabControl1.TabPages.Insert(0, tabPage1);
            this.tabPage1.Show();
            tabControl1.TabPages.Remove(tabPage2);
            tabControl1.TabPages.Remove(tabPage3);
            tabControl1.TabPages.Remove(tabPage4);
            this.tabPage2.Hide();
            this.tabPage3.Hide();
            this.tabPage4.Hide();
}

我再次使用....

tabControl1.TabPages.Remove(tabPage2);
            tabControl1.TabPages.Remove(tabPage3);
            tabControl1.TabPages.Remove(tabPage4);
            this.tabPage2.Hide();
            this.tabPage3.Hide();
            this.tabPage4.Hide();

这些代码。如果单击按钮时打开另一个标签页,则应将其删除并显示相关标签页。它正常工作。

我的问题是.. 如果我再次点击相同的按钮,同样的标签页会不断添加 任何人都可以给我一个解决方案..

1 个答案:

答案 0 :(得分:0)

我创建了一种单向方式...在按钮单击中我按照这样修改。

 private void button1_Click(object sender, EventArgs e)
    {
        tabControl1.TabPages.Remove(tabPage1);
        if (tabControl1.TabPages.Count <= 1)
        {
            tabControl1.TabPages.Insert(0, tabPage1);
            this.tabPage1.Show();
            tabControl1.TabPages.Remove(tabPage2);
            tabControl1.TabPages.Remove(tabPage3);
            tabControl1.TabPages.Remove(tabPage4);
            this.tabPage2.Hide();
            this.tabPage3.Hide();
            this.tabPage4.Hide();
        }
    }

第一个代码是tabControl1.TabPages.Remove(tabPage1)。然后如果tab-page打开则删除。如果语句负责何时打开按钮点击相关标签页。然后总是只显示一个标签页按钮点击时刻