刚开始做软件,遇到不少问题,今天就遇到一个tabControl中隐藏某个tabpage或者让tabpage不可用的恶心问题。
自己试了一下,使用visible和enabled均无效果。而且tabpage根本就没有这两个属性。
怎么办呢?
看来只有remove以后再add了,我的方法是form初始化的时候定义1个tabpage数组变量,将每个tabpage都存放到数组中,如果想删除哪个tabpage就使用tabControl的remove方法或者removeat方法。想显示的时候add就OK了。这样做的好处是不需要真正的销毁tabpage的内存,用的时候直接add,基本跟visible是一个效果。
是不是很简单?
下面是主要代码。
TabPage tp = new TabPage();
//初始化
private void reg_Load(object sender, EventArgs e)
{
tp = this.tabControl1.TabPages[0];
}
//删除
private void del_Click(object sender, EventArgs e)
{
this.tabControl1.TabPages.Remove(tp);
}
//显示
private void add_Click_1(object sender, EventArgs e)
{
this.tabControl1.TabPages.Add(tp);
}