删除/更改窗口顶部的WPF“ - (无响应)”文本?

时间:2016-09-29 08:57:22

标签: c# wpf

所以我有一个C#WPF应用程序,它从报表服务器运行报表,并编辑结果以显示在Chrome中。

由于数据库的大小和报表服务器的速度,进程在执行报表时始终挂起(ReportExecutionService.Render()方法)。

这导致应用程序冻结并在窗口标题中显示“ - (Not Responding)”。

它始终如此,并且它总是在几分钟后工作,所以我真的想阻止这种情况发生,或者甚至可能将消息更改为“ - (加载报告)”以更好地代表实际发生的事情。

这可能吗?

2 个答案:

答案 0 :(得分:2)

让它异步!

public Task DatabaseActionAsync(string argument)
{
    return Task.Run(() => 
        DatabaseAction(argument));
    );
}

无论你怎么称呼它:

await DatabaseActionAsync(argument);

答案 1 :(得分:0)

使用另一个线程来编写报告生成代码。然后不阻止UI线程

new Thread(() =>
{
  Thread.CurrentThread.IsBackground = true;
   // your code here 

 }).Start();