Application.Run()和ShowDialog()之间的区别
本文关键字:区别 之间 Run Application ShowDialog | 更新日期: 2023-09-27 18:28:24
我正在开发一个简单的Winform应用程序,作为使用MVP模式的第一步。我已经习惯了启动表单的标准、自动生成的代码,即Application.Run(new Form1());
。我正在研究的MVP示例项目在Program.cs
中做了很多工作,但基本部分是这样的:
TestView view = new TestView();
TestPresenter presenter = new TestPresenter(view);
presenter.LoadView();
view.ShowDialog();
据我所知,ShowDialog
方法与Application.Run
类似,因为它为对象创建了一个消息循环,所以它的功能应该与以Run
开头的表单相同。
我的问题是:Application.Run()
和Show.Dialog()
之间是否存在显著差异,这将决定在这种情况下使用一个而不是另一个?据我所知,从测试应用程序中没有什么不同的运行方式,但我知道这对软件来说意义不大。
Application.Run
用于统计第一个表单。在第一个表单之后,您应该使用Form.Show()
或Form.ShowDialog()
。两者之间的主要区别是ShowDialog()
以模式启动表单,这意味着在关闭该表单(类似于MessageBox
)之前,您无法切换到其他表单。