c# tabcontrol控件标签如何隐藏?
我想做成卡巴斯基、nod32、GHOST 2003等那样的界面,就是左边一些按钮,右边是tabcontrol控件。当我点击左边一个按钮时,右边显示tabcontrol的一页,且这一页的标签要隐藏,就是说把原来用标签换页的方式改为用按钮事件代码实现,请问如何实现。
注意:只是隐藏标签,并不是清除一页,有些人数用tabcontrol_order.TabPages.Remove(TabPage_name)是断不可取的,不是这个意思。
------解决方案--------------------不要用TabControl,用Panel吧。
------解决方案--------------------多 tabpage 的可见性好似只有那个 remove 的办法
remove 是从 tabcontrol 中去除, tabpage 还在的, 还可以再次加进去
你的方式其实也可以使用多个 panel 在右边来实现
根据左边的选择, 来决定右边哪个panel 可见并且Dock.fill
------解决方案--------------------自己写一个控件,控件组合多个panel或其它的container控件,然后公布方法或事件出来,一切搞定;
------解决方案--------------------为什么不用MDI或者SplitContainer
------解决方案--------------------自带的控件是不能实现这个功能的,你非要实现只有重写这个控件。或者换其它方式。
------解决方案--------------------选中用:tabControl1.SelectedIndex = 3;
隐藏标签可以考虑将其标签大小设置为0或最小
------解决方案--------------------哎,上面我回复错了,不好意思,不是这个帖子的。
其实lz这个问题,可以用panel+form来实现啊。
每页定义成一个form(toplevel设置成false)
点每个按钮的时候先清除panel内的所有control,然后再增加相应的form就行了。
------解决方案--------------------教你一个很简单的办法,画一个panel,把tabcontrol放进去,填满,四边矛定,然后把tabcontrol的location设置成负的,直到上面的标签被panel的边框挡住为止
------解决方案--------------------C# code
public class TabSwitch : TabControl
{
public TabSwitch()
: base()
{
}
public override Rectangle DisplayRectangle
{
get
{
if (!DesignMode)
return ClientRectangle;
else
return base.DisplayRectangle;
}
}
}
------解决方案--------------------
Apperarance 属性:Faltbuttons
SizeMode属性:Fixed
各个TabPage的Text :空
ItemSize : Width=0;Height=1;//Height好象不能设为0,但也就那么一丁点儿,不影响吧
厉害吧~~给分吧~~~