你好,我正在考虑创建一个选项卡控件,选项卡将被菜单栏中的单击过滤。
例如
我的菜单栏是形式1我的tabcontrol是form 2
我的tabcontrol包含7个选项卡,我希望每次只显示一个选项卡。
例如,如果我单击菜单栏中的名称,它将打开/显示一个新表单,而tabcontrol将只显示名称选项卡。
我想知道这是否可能,因为为每个列表制作不同的表单似乎很长。
感谢您的阅读
问题是,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。
是的,这将工作得很好。但我认为,你必须使用默认的选项卡视图控件,这一定不会产生问题,在你的情况下,