C#学习笔记——(Winform)的Show()和ShowDialog()方法

show()是非模式窗体. 
showDialog()是模式窗体. 
区别在于,以showDialog()打开的窗体,要等窗体关闭后才能操作其他窗体.而show()则不受此限制.

比如一下代码段:
          this.Hide();
            Form2 obj = new Form2();
            obj.Show();           
            Form3 obj3 = new Form3();
            obj3.Show();
在form1窗体中点击按钮,显示form2和form3效果如下:、

form3可以和from2层叠显示。
如果改用showDialog:
          this.Hide();
            Form2 obj = new Form2();           
            obj.ShowDialog();
            this.DialogResult = DialogResult.OK;
            Form3 obj3 = new Form3();
            obj3.Show();
显示效果如下:

只有当form2被关闭后,form3才会显示出来。
原文地址:https://www.cnblogs.com/eve612/p/14628015.html