如果需要仅仅显示Form2,除了将Form1.Close改为Form1.Hide之外,还有一种办法,就是将Main改为:static void Main()
{
  (new Form1()).Show();
  Application.Run(); // 启动独立的应用程序线程

这样Form1中的this.Close()就不会导致应用程序终止运行了,而且不需要Form1时,可以真正Close从而释放一些资源。不过,应用程序的终止就不要在其他地方控制了,比如在Form2的Closed事件中:private void Form2_Closed(object sender, System.EventArgs e)
{
  Application.Exit();

在多文档应用程序中,往往需要在内部维护一个当前活动Form的列表,最后一个Form关闭时,再调用Application.Exit。