可以
  new Form2().Show();
  this.Close();
在Form2中:
  new Form1().Show();

解决方案 »

  1.   

    to miqier: Form1是一个类,visible不是静态方法to ryg221: 这样是新生成一个,并不是把原来的显示出来
      

  2.   

    那你应该把Form1和Form2的变量声明在一个Modual里面,并且为public
    然后你再其他的类里面就可以随便调用了
      

  3.   

    Form2中定义一个Form1变量
    public Form1 form1
    在Form1中指定该变量
    然后在Form2需要的地方激活Form1
    Form1中:
    Form2 form2 = new Form2();
    form2.form1 = this;
    this.Hide();
    form2.Show();
    Form2中:
    form1.Show();
      

  4.   

    Form类的对象有个一个方法Hide()来隐藏一个Form,同时又另外一个方法Show()来显示一个Form。
    因此,在form2中,先声明一个form1的对象,并调用Show()方法来显示它,代码如下:form1 pForm1;
    if(pForm1!=null)
    {
       pForm1.Close();
       pForm1=null;
    }
    pForm1=new form1;
    pForm1.Show();
    this.Hide();
      

  5.   

    3种方法:
    1)Form2里面定义一个Form类型的变量,在你的Form1中调用Form2后,将Form1赋给那个变量,然后再你要显示的时候,在Form2里面调用那个变量(这时候那个变量其实也就是Form1了)的Show()方法2)将Form1和Form2都做成静态类型的(例如考虑采用单例模式)3)在Form1里面注册Form2的某一个事件,通过Form2的某一个触发时间来调用Form1显示出来个人推荐使用第三种方法,这样两个Form的耦合度低,程序结构清晰