我正在使用带有 c# winforms 的 .NET 3.5。在这个我使用 MDI 子选项卡控件。如果我打开一个表单,它工作正常,它将成功打开。如果我再次打开相同的表格,它会打开。这意味着标签的重复。
我的代码如下...
private void Main_MdiChildActivate(object sender, EventArgs e)
        {
            if (this.ActiveMdiChild == null)
                tabForms.Visible = false; // If no any child form, hide tabControl
            else
            {
                this.ActiveMdiChild.WindowState = FormWindowState.Maximized; // Child form always maximized
                if (this.ActiveMdiChild.Tag == null)
                {
                    TabPage tp = new TabPage(this.ActiveMdiChild.Text);
                    tp.Tag = this.ActiveMdiChild;
                    tp.Parent = tabForms;
                    tabForms.SelectedTab = tp;
                    this.ActiveMdiChild.Tag = tp;
                    this.ActiveMdiChild.FormClosed += new FormClosedEventHandler(ActiveMdiChild_FormClosed);
                }
                if (!tabForms.Visible) tabForms.Visible = true;
            }
        }
在这种情况下,每次 this.ActiveMdiChild.Tag 取值为 null 时,它会一次又一次地打开新表单。这意味着选项卡控件中的表单重复