8

关闭 C# WPF 应用程序的首选方法是什么?

1) 在主窗口中调用 Window.Close()

2) 在主窗口中调用 Application.Current.Shutdown(0)。

两者在语义上是等价的还是我需要注意的细微区别?

4

3 回答 3

5

第一个仅关闭窗口,这取决于您Application.ShutdownMode甚至可能不会关闭应用程序。

如何退出应用程序完全取决于您想要做什么,我倾向于定义Application.MainWindow并将 设置ShutdownModeOnMainWindowClose所以所有小对话都不会阻止应用程序关闭(因为默认值为OnLastWindowClose)。

于 2011-06-07T13:16:58.430 回答
3

绝对Window.Close();这将使所有其他窗口正确关闭并最终确定其可支配资源。请注意,您应该在主窗口中调用它来关闭整个应用程序(即this.Close();从主窗口)。

于 2011-06-07T13:17:02.770 回答
0

Application.Shutdown关闭所有打开的窗口并处理它们,您也可以返回另一个退出代码。所以我(通常)会选择Application.Shutdown.

于 2011-06-07T13:25:07.763 回答