您好我正在考虑创建一个tabcontrol,其中的tabpages将通过menustrip中的点击进行过滤。
对于前。
我的menustrip是1 我的tabcontrol是2表格
我的tabcontrol由7个标签组成,我希望一次只显示1个标签。
例如,如果我单击menustrip中的名称,它将打开/显示一个新表单,tabcontrol将只显示名称选项卡。
我想知道它是否可行,因为为每个列表制作差异形式似乎很长。
感谢您阅读本文。
答案 0 :(得分:1)
问题是,TabPage
控件没有Visible
属性(嗯,它有,但它什么也没做)。因此,您无法随意隐藏和显示标签。您必须删除不应显示的标签。
您可以使用以下代码创建一个表单(名为TabbedForm):
private readonly int _index;
public TabbedForm(int index)
{
this._index = index;
InitializeComponent();
}
private void form_Load(object sender, EventArgs e)
{
for (int index = this.tabControl1.TabPages.Count - 1; index >= 0; index--)
{
if (index != this._index)
this.tabControl1.TabPages.Remove(this.tabControl1.TabPages[index]);
}
}
使用主窗体中的每个菜单按钮(Clicked
事件),您可以打开具有不同索引的TabbedForm。
答案 1 :(得分:0)
是的,这会很好用。但我认为,您必须使用默认的选项卡视图控件,并且在您的情况下也不能创建问题。