【附代码】Form的Show()方法,为何运行时导致出现后即消失,而ShowDialog()则不会?
帮别人问的问题,我也不知道为何问这么怪的问题。她是把VS默认新建窗口工程的代码给改了using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
     static class Program
     {
         /// <summary>
         /// 应用程序的主入口点。
         /// </summary>
         [STAThread]
         static void Main()
         {
             Application.EnableVisualStyles();
             Application.SetCompatibleTextRenderingDefault(false);
             //Application.Run(new Form1());
             Form a = new Form();
             a.Show();  用这句,运行时窗口一闪就完了
            //a.ShowDialog();    用这句,就不会消失    }
     }
}
个人猜测,会不会Show()不阻塞线程?? 我查了MSDN没找到相关说明。如果有可能,请附上MSDN的解释,谢谢
------解决方案--------------------
show()不阻塞线程,那么,Main函数运行show()后,即结束整个程序,而showDialog()和Application.Run()均会阻止当前Main函数继续执行。