c# - c# WPF App.Current 在自定义对话框窗口关闭后变为空
问题描述
我有 WPF 应用程序,我在其中更改了默认入口点。
<Application x:Class="FrazerClient.App" Startup="AppStartup">
public void AppStartup(object sender, StartupEventArgs e)
{
// Does some minor work before an application window opens.
}
次要的工作调用了这几次:
App.Current.Dispatcher.Invoke((Action)delegate
{
// Custom dialog window is opened
});
第二次调用时,App.Current 变为空。我几乎肯定与自定义对话框窗口关闭有关,但不确定如何防止对话框窗口的App.Current
关闭在最后一个窗口关闭时无效。
这也阻止App.Current.Shutdown()
了工作。
解决方案
设置ShutDownMode
为OnExplicitShutdown
关闭窗口不会自动关闭应用程序。
您通常在应用程序对象的 Xaml 中执行此操作
<Application x:Class="FrazerClient.App"
Startup="AppStartup"
ShutdownMode="OnExplicitShutdown">
推荐阅读
- haskell - 使用 Aeson 读取对象的单个字段,无需编写 FromJSON 实例
- python - 如何计算我的数据集中的移动平均值?
- react-native - 无法将数据输入从一个屏幕传递到另一个屏幕。反应原生
- css - Bootstrap 4 - 下拉链接中的 H3
- node.js - 在 Node JS 中处理多个 HTTP 请求
- datetime - 如果日期时间值存在于日期时间值列表中,则为条件格式
- jenkins - 如何配置 Jenkins 以并行运行我的测试用例?
- excel - 如何自动将excel查询导入excel文件?
- java - 什么是hibernate中的聚合、委托和关联?
- javascript - 如何使用 foreach 循环格式化美国电话号码?