要实现通过窗口form1的BOTTON弹出窗口form2,当关闭form2窗口,再次从form1的按钮进入时,希望激活form2,而不是重新打开,好像fom2.Show()不行,请问如何解决

解决方案 »

  1.   

    把Form2定义在Form1的成员变量里面就可以了
      

  2.   

    定义以后,怎么打开?当关闭Form2窗口,在form1再次Form2.Show()的话,会另起一个新进程,如果判断当Form2窗口进程存在,并激活它
      

  3.   

    每次关闭的时候不去close,只是hide,下一次先判断:if (Form2 != null && !Form2.Visible)
    {
        Form2.Show();
    }
      

  4.   

    不好意思,错了,应该是:if (Form2 != null && !Form2.Visible)
    {
        Form2.Visible = true;
    }
      

  5.   

    不好意思,错了:
    if (Form2 != null && !Form2.Visible)
    {
        Form2.Visible = true;
    }
      

  6.   


            private void button1_Click_1(object sender, EventArgs e)
            {
                Form2 form2 = this.Form2;
                form2.Show();
            }        private static Form2 _form2 = null;        public Form2 Form2
            {
                get 
                {
                    if (_form2 == null || _form2.IsDisposed)
                    {
                        _form2 = new Form2();
                    }
                    return _form2;
                }
                set 
                { 
                    _form2 = value; 
                }
            }
      

  7.   

    private static Form2 _form2 = null; 这里修改下 private Form2 _form2 = null; 不需要是静态的.