一般都不会用Close()方法的,除非是最后的推出程序,过程中一般是不会用的

解决方案 »

  1.   

    这个可以满足你的要求了:
      new System.Threading.Thread((System.Threading.ThreadStart) delegate
                  {
                      Application.Run(new MainForm());
                  }).Start();//打开MainForm
                    this.Close();//关闭当前窗体
      

  2.   

    因为有this.Close()所以都会执行窗体的FormClosing事件
    而你窗体的FormClosing事件中有application.exit()所以全部窗体都关了,程序也退出了
    建议你子窗体退出时直接this.Close(),而application.exit()加在主窗体里就行了
      

  3.   

     new System.Threading.Thread((System.Threading.ThreadStart) delegate
      {
      Application.Run(new MainForm());
      }).Start();//打开MainForm
      this.Close();//关闭当前窗体
      

  4.   

    那我是不是选择“把后面的窗体加FormClosing事件,然后跳转时用.Hide()隐藏窗体,让客户可以点‘X’退出”的方案好点?一般的在岗的编程人员是怎样处理这些问题的?