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

时间:2011-06-07 13:14:07

标签: c# wpf close-application

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

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

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

这两个在语义上是等价的还是我需要注意的微妙区别?

3 个答案:

答案 0 :(得分:4)

第一个关闭窗口,具体取决于您的Application.ShutdownMode甚至可能无法关闭应用程序。

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

答案 1 :(得分:3)

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

答案 2 :(得分:0)

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