C# 从拆分器面板中删除后无法显示winform

C# 从拆分器面板中删除后无法显示winform,c#,winforms,splitterpanel,C#,Winforms,Splitterpanel,我有两张表格(表格一和表格二)。Form1有一个带有两个面板的拆分器。我在拆分器控件的panel2中添加了Form2。我想在不创建Form2的新实例的情况下,在Form2中弹出和弹出。请在下面查找代码段: public partial class Form1 : Form { private Form2 form2 = null; public Form1() { InitializeComponent(); } private void Form1_Load(object

我有两张表格(表格一和表格二)。Form1有一个带有两个面板的拆分器。我在拆分器控件的panel2中添加了Form2。我想在不创建Form2的新实例的情况下,在Form2中弹出和弹出。请在下面查找代码段:

public partial class Form1 : Form
{
 private Form2 form2 = null;
 public Form1()
 {
     InitializeComponent();
 }
 private void Form1_Load(object sender, EventArgs e)
 {
        form2 = new Form2();
        form2.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
        form2.Dock = DockStyle.Fill;
        form2.TopLevel = false;
        splitContainer1.Panel2.Controls.Add(form2);
        form2.Pop += new EventHandler(PopForm);
        form2.Show();
 }
 //button click event handler from Form2
 private void PopForm(object sender, EventArgs e)
 {
     Button b = sender as Button;
     if(b.Text.ToUpper() == "POPOUT")
     {
         splitContainer1.Panel2Collapsed = true;
         splitContainer1.Panel2.Controls.Remove(form2);
         //need to show the form without creating a new instance to maintain state
         form2 = new Form2();
         form2.SelectedMailId = 1;
         form2.Pop += new EventHandler(PopForm);
         form2.SetButtonText = "PopIn";
         form2.Show();                
     }
     else
     {
         //this works fine
         splitContainer1.Panel2Collapsed = false;
         form2.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
         form2.Dock = DockStyle.Fill;
         form2.TopLevel = false;
         splitContainer1.Panel2.Controls.Add(form2);
     }
   }
 }

弹出时,如何在不创建新实例的情况下显示Form2?

同时弹出设置窗体边框样式和顶层

 if(b.Text.ToUpper() == "POPOUT")
 {
     splitContainer1.Panel2Collapsed = true;
     splitContainer1.Panel2.Controls.Remove(form2);
     //need to show the form without creating a new instance to maintain state
     form2.TopLevel = true;
     form2.FormBorderStyle = FormBorderStyle.Sizable;
     // setup your settings
     form2.Show();                
 }