Application.Current.MainWindow.Close vs Application.Current.



是否应将Application.Current.Shutdown()用作关闭WPF应用程序的最佳实践?

我有一个小型的多窗口应用程序,"关闭"似乎可以很好地用于我所有的退出命令。然而,我被告知要始终使用Application.Current.MainWindow.Close()

如果ShutdownMode未分别设置,则MainWindow.Close甚至不会执行任何操作。你可以做你想做的事,它应该符合的期望

Shutdown将忽略某些Closing事件被取消的事实,因此这是您需要考虑的一件事)

还有:

在以下情况下,Windows Presentation Foundation(WPF)会隐式调用关闭:

  • 当ShutdownMode设置为OnLastWindowClose时。

  • 当ShutdownMode设置为OnMainWindowClose时。

  • 当用户结束会话,而SessionEnding事件未被处理或在不取消的情况下被处理时。

最新更新