Prism 应用程序关闭时不退出
我正在学习棱镜,我遇到了一个问题。
我制作了一款应用程序,与 Mike Taulty 在关于 Prism 的精彩教程中制作的应用程序非常相似。最大的区别是我的应用程序是 WPF 应用程序而不是 Silverlight。
我发现我遇到了问题。当我关闭主 shell 窗口时,应用程序不会退出。窗口消失了,但调试器仍然处于活动状态。
我尝试过寻找调用堆栈等,但 Visual Studio 只是告诉我它是“外部代码”。
关于我可以做什么/寻找什么来解决这个问题有什么想法吗?
I am learning prism and I have hit a problem.
I have made an app very similar to the one that Mike Taulty makes in is great tutoral about Prism. The biggest difference is that my app is a WPF app instead of Silverlight.
I am finding that I have hit a problem though. When I close the main shell window, the app does not exit. The window goes a way, but the debugger is still active.
I have tried looking for call stacks and such, but Visual Studio just tells me that it is "External Code".
Any ideas on what I can do/look for to fix this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
重写 App.xaml 后面代码中的 OnStartup 方法,并添加以下内容:
HTH
Override the OnStartup method in the code behind of your App.xaml, and add this:
HTH
戴尔的回答只解决了部分问题。
我遇到了同样的问题,过了一段时间我发现区域导航命令也不能正常工作。
问题出在 Bootstrapper 中创建的 Shell 上。
当我解决这个问题时,我得到了 2 个 Shell 窗口实例。
为什么?
真正的问题是 app.xaml 中的启动 Uri。
您不能同时拥有启动 Uri 和 Bootstrapper 中的 Shell 创建。
从 app.xaml 中删除它,修复您的 Shell,不需要这个“补丁”,您的应用程序将按其应有的方式运行,当您关闭 Shell 时它将关闭。
再次强调,这只是一个症状,如果不修复 Shell 创建,将会出现其他问题。
The answer of Dyer solve only part of the problem.
I had the same issue, and after a while I found out that region navigation commands are not working well either.
The problem was with the Shell creating in Bootstrapper.
When I fixed that, I got 2 Shell windows instances.
Why?
The real problem was the startup Uri in the app.xaml.
You can't have both startup Uri with Shell creation in Bootstrapper.
Remove it from the app.xaml, fix your Shell and no need is this "Patch" and your app will behave as it should, it will close when you close the Shell.
Again, this is only a symptom, other issues will rise if you don't fix the Shell creation.