gpt4 book ai didi

wpf - 在 Entity Framework 加载数据时显示忙碌指示符

转载 作者:行者123 更新时间:2023-12-04 16:18:55 24 4
gpt4 key购买 nike

在过去,我已经使用 Silverlight 轻松地完成了这件事,方法是将 BusyIndi​​cator 声明为我的根元素,并将 IsBusy 属性绑定(bind)到 RIA 服务生成的域上下文的 IsLoading 属性:

<toolkit:BusyIndicator IsBusy="{Binding Context.IsLoading}" >

由于 Entity Framework 生成的 ObjectContext 上似乎没有 IsLoading 属性,我如何在 WPF 中绑定(bind) IsBusy 属性?

谢谢

最佳答案

我想出了什么:

来自 WPF 扩展工具包的忙碌指示器:

<extoolkit:BusyIndicator IsBusy="{Binding IsBusy}" BusyContent="Loading data..." >

在我的基类 View 模型中,我添加了以下方法:

protected void ExecuteBackgroundProcess(Action action)
{
IsBusy = true;

Task task = Task.Factory.StartNew(() => action()).ContinueWith((s) => this.IsBusy = false);
}

当我想从服务器加载集合时,我可以从派生 View 模型调用:

this.ExecuteBackgroundProcess(() =>
{
var collection = _securityRepo.TakeOfType<Security>(10).ToObservableCollection();

DispatcherHelper.CheckBeginInvokeOnUI(() =>
{
Securities = collection;
RaisePropertyChanged("Securities");
});
});

在 CodeProject 上还有一个更健壮和完整的解决方案: http://www.codeproject.com/KB/WPF/ThreadingComponent.aspx?msg=3319891

关于wpf - 在 Entity Framework 加载数据时显示忙碌指示符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4228175/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com