我在我的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();
这些代码。如果单击按钮时打开另一个标签页,则应将其删除并显示相关标签页。它正常工作。
我的问题是.. 如果我再次点击相同的按钮,同样的标签页会不断添加 任何人都可以给我一个解决方案..
答案 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打开则删除。如果语句负责何时打开按钮点击相关标签页。然后总是只显示一个标签页按钮点击时刻