任务执行后未显示WPF对话框等待运行

问题描述

当trySomething返回字符串时,显示以下代码工作正常,并且显示对话框窗口(我正在使用Prism MVVM,但我认为这不应该是这里的问题)。

var errorMessage = "";
IsBusy = true;
await Task.Run(() =>
{
    errorMessage = trySomething(sourceFile);
});
IsBusy = false;

if (errorMessage != null)
{
    _dialogService.ShowNotificationDialog(errorMessage,"ErrorTitle");
}

如果我尝试按以下方式使用BusyTask(Task t),则dialogWindow不可见,但是我无法单击其他任何地方,因此它似乎存在并阻塞。

var errorMessage = "";
await BusyTask(Task.Run(() =>
{
    errorMessage = CrashtestWrapper!.AddTitelbild(sourceFile);
}));

if (errorMessage != null)
{
    _dialogService.ShowNotificationDialog(errorMessage,"Fehler bei Bildablage");
    return;
}

...

private async Task BusyTask(Task t)
{
    IsBusy = true;
    await t;
    IsBusy = false;
}

我的猜测是这是一个错误的线程,但是configureAwait(true)不会更改任何内容,而configureAwait(false)会带来错误的线程上的(预期)错误。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...