C#窗体Show和ShowDialog 方法的区别

2025-03-12 09:51:08
推荐回答(2个)
回答1:

frm.ShowDialog(); //此时frm为模态窗口显示,此窗口不关闭,无法对父窗口进行操作。模态窗口关闭后,仍可以读取模态窗口中的信息,如窗口的返回状态等。
frm.Show();//此时为非模态窗口,在对此窗口响应之前,可以对其他窗口进行操作。关闭非模态窗口,该窗口将不复存在,会释放窗口的所有资源,所以无法得到该窗口的任何信息。

回答2:

Show显示为非模式的窗口,ShowDialog显示为模式对话框。