忙碌指示器在XAML加载时没有响应

时间:2012-04-12 11:44:24

标签: wpf busyindicator

我有一个WPF应用程序,它具有带大数据绑定的复杂UI。我正在使用WCF异步调用服务器来获取数据。从服务器获取数据大约需要4秒钟,对于XAML绑定大约需要6秒钟。为了获得用户通知,我已经给出了一个正常运行的忙指示符(进度条上显示进度),直到客户端到达的数据。当我将结果分配给XAML时,它(忙指示符)将变得无响应(也是主窗口)。是由于单个UI线程吗?是否可以在WCF异步调用中的单独线程(如后台工作程序)中显示忙指示符?或者是处理这种情况的其他好方法吗?

busyIndicator.IsBusy = true;    

ServiceAgentInstance.GetAll((s1, e1) =>    
    {    
        ObservableCollection<Model> collection = e1.Result;   
        busyIndicator.IsBusy = false;   
    });

由于

1 个答案:

答案 0 :(得分:2)

听起来你在UI线程上发出了应该避免的WCF请求。尝试使用BackgroundWorker发出请求,以释放您的UI线程,为忙碌指示器设置动画。