c#怎样使隐藏的窗体再次显示,显示时保留隐藏之前的数据例如:from1上有button1,点button1时显示from2,
from2上有按钮button2,点button2时from2隐藏
再点击from1上的button1时from2再次出现,并且from2上的数据与隐藏前一样,不是new的

解决方案 »

  1.   

    在form1里定义form2为全局的变量,不要定义成局部变量
    代码大致如下:
    form1里
    private Form2 m_form2=null;
    private void button1_Click(object sender,EventArgs e)
    {
        if(m_form2==null)
           m_form2=new Form2();
        m_form2.Show();
    }Form2里
    private void button1_Click(object sender,EventArgs e)
    {
       this.Hide();
    }
      

  2.   

    //from1中的button1_Cleck事件中:
    from2 f2 = new from2();
    this.Hide();
    if (fe.ShowDialog() == DialogResult.OK)
    {
        this.Show();
    }
    //from2中的button1_Cleck事件中:
    //你要进行的其他操作
    DialogResult = DialogResult.OK;