Form.ShowDialog与Form.Show

假设一个Form1窗体中执行了如下方法
private void TestShowDialog()
{
Form2 f2 = new Form2();
f2.ShowDialog();
//在f2的窗体弹出以后,将在f2窗体上进行操作,Form1暂时被限制操作,如果你讲弹出的f2关闭,将弹出下面的对话框
MessageBox.Show("f2已经关闭!");
}
而如果是下面的方法
private void TestShow()
{
Form2 f2 = new Form2();
f2.Show();
//在f2的窗体弹出以后,将接着弹出下面,Form1和新弹出的f2可以同时存在,并随便你操作哪个窗体,f2关闭以后也不会对Form1产生什么影响,
MessageBox.Show("f2尚未关闭!");
}
在使用ShowDialog后可以使用f2.Dispose();来销毁f2窗体。

原文地址:https://www.cnblogs.com/xh831213/p/1717867.html