用Form1表示原窗体,使用Form2表示新显示的窗体,它们之间存在“Form1->Form2”的导航关系。
显示Form2有两种方式-调用Form2的Show方法或调用ShowDialog方法。Show方法将Form2作为普通的窗体显示出来,而ShowDialog方法则将其作为模式对话框进行显示。这两种方法的区别在于,对Show方法的调用立即返回,Form1继续执行Show方法调用后面的代码,而对ShowDialog的调用将被阻塞,直到Form2被关闭为止。
另外,ShowDialog方法显示对话框后还能接收到一个返回值,表示用户在对话框中进行操作的结果。只需在Form2中的恰当位置将其自身的DialogResult属性设置为DialogResoult枚举的某个值之一,就可以关闭Form2并向Form1返回这个DialogResult值。
常用的窗体间属性、构造器之外的一种传递值的方法:
可以在第一个窗体中定义一个static   public   变量,用它来传递数据   
  如:   
  Form1.cs文件中:   
    
  static   public   string   str;   
  private   Form2   frm   =   new   Form2();   
  private   void   button1_Click(object   sender,   System.EventArgs   e)   
  {   
  str   =   textBox1.Text;   
  frm.Show();   
  this.Hide();   
  }   
    
  Form2.cs文件中:   
    
  private   void   Form2_Load(object   sender,   System.EventArgs   e)   
  {   
  textBox1.Text   =   Form1.str;   
  }   
    
  如果str被声明为   public   而不是   static   public   则必须声明一个Form1的实例才能使用.