2010-08-22 127 views
19

这是稍微涉及到在这里提出的问题后,又因为我不使用线程的答案并不适用于我的情况:WPF应用程序仍然在后台运行关闭

WPF Not closing properly

我已经转换的一个我的WinForm应用程序转换为WPF应用程序,除了将相应的WPF/C#4.0(MessageBoxButtons改为MessageBoxButton,为什么是一个字母的区别?)改成几个字之外,没有什么需要做的了。

无论如何,如果我通过调试器运行应用程序,它会正常运行,直到我用窗口右上角的“X”按钮关闭它。应用程序窗口关闭,但我注意到调试器仍然显示停止图标,检查任务管理器确认它仍在运行。

我没有在后台运行任何其他线程,所以我知道它并没有等待别的东西。

我刚刚开始使用WPF,但我认为当用户关闭应用程序时,它应该只是...关闭?

感谢您的帮助!

回答

33

什么是您的shutdown mode?如果它是明确的,那是因为你没有明确关闭。如果它是主窗口,这是因为您尚未将主窗口分配给Application.MainWindow

+2

谢谢!我从来不知道关闭应用程序有不同的行为。我简单地将“ShutdownMode =”OnMainWindowClose“”添加到我的应用程序的XAML中,如链接中所述,它的功能就像一个魅力! – 2010-08-22 22:33:55

9

写在申请截止按钮的代码:

Application.Current.Shutdown() 
+1

我没有关闭按钮,但通过点击x它会调用Closed事件,这对我很好用:this.Closed + =(s,e)=> Application.Current.Shutdown(); – Despertar 2012-05-12 01:28:21

相关问题