我一直遇到这个问题,解决它,然后当我实现新代码时它又回来了。这让我发疯!
我最终发现,如果您实例化任何类型的窗口,即使您从未调用 Show() 或 ShowDialog(),当您关闭应用程序时,它也不会终止。因此,现在我确保在适当的时候调用 Close(),并且我创建的所有 Windows 都不会再出现该问题。
我已经实现了更多不创建窗口的新功能(据我所知!),但现在我的应用程序不会再次终止。我认为在 VS IDE 中点击暂停是没有用的,因为线程没有任何上下文,所以我无法弄清楚是什么代码导致了挂起。
通常情况下,我预计在后台执行但未退出(并且未设置为后台线程)的线程会导致此行为,但此时我不会创建任何线程。
任何人都可以推荐一个好工具(免费或需要许可证)来帮助我快速解决这些愚蠢的问题吗?现在,我要返回,注释掉大量新代码,然后逐行取消注释,直到问题再次出现。我通常会用蛮力来解决这些问题,并且非常感谢有一个工具可以让我的生活更轻松。 :)
最佳答案
听起来您可能遇到其他答案正在解决的后台线程问题,但对于 WPF Windows,您是否尝试过更改 App 类的 ShutdownMode?您还可以尝试通过显式调用 Shutdown 来强制应用程序退出:
Application.Current.Shutdown();
关于c# - 主窗口关闭时应用程序不会退出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2195684/