C# 如何关闭选项卡页?

C# 如何关闭选项卡页?,c#,winforms,tabcontrol,C#,Winforms,Tabcontrol,我在from1中有一个tab控件,在tabcontrol1中从2打开。我想在单击表单2中的按钮时清除tabcontrol1。 我尝试使用这些代码,但我做不到 在tabcontrol1中打开form2: form2 sar = new form2(); sar.TopLevel = false; TabPage tb = new TabPage(); tb.Controls.Add(sar); sar.Parent = tb; tabControl1.TabPages.Add(tb); sar.

我在from1中有一个tab控件,在tabcontrol1中从2打开。我想在单击表单2中的按钮时清除tabcontrol1。 我尝试使用这些代码,但我做不到


在tabcontrol1中打开form2:

form2 sar = new form2();
sar.TopLevel = false;
TabPage tb = new TabPage();
tb.Controls.Add(sar);
sar.Parent = tb;
tabControl1.TabPages.Add(tb);
sar.Show();
tabControl1.SelectTab(tb);
使用(表单2中的按钮)关闭选项卡:

而cleantab为(格式1):

但它不起作用。

使用以下代码:

        private void Form2_FormClosed(object sender, FormClosedEventArgs e)
    {
        TabPage a;
        a=(TabPage)(this.Parent);
        TabControl b;
        b = (System.Windows.Forms.TabControl)a.Parent;
        b.TabPages.Remove(a);
    }

请注意拼写,只发布真实代码。如果没有这些打字错误,收尾应该很好。当然,你需要引用另一种形式,指的是真实的形式,而不仅仅是你现在尝试的另一种形式。在打开第二个表单时,传递一个对打开表单的引用,并将其保存在构造函数中!非常好。您能解释一下这个代码吗?我们将您添加的表单添加到tabpage中,我们得到它并将其转换为我们自己的类型,然后将其导出。对不起。如何在form2中运行它在tab控件中从Form1打开的函数?在form2中定义一个公共函数并调用它:form2.FunctionName
   public void cleantab()
   {
        tabcontrol1.tabpages.remove(tabcontrol1.selectedtab);
   }
        private void Form2_FormClosed(object sender, FormClosedEventArgs e)
    {
        TabPage a;
        a=(TabPage)(this.Parent);
        TabControl b;
        b = (System.Windows.Forms.TabControl)a.Parent;
        b.TabPages.Remove(a);
    }