我有一个WPF应用程序 - 使用MVVM作为设计模式。
在主视图中,有一个ContentPresenter
绑定到相应ViewModel中的属性。我对与该属性关联的数据类型具有类型引用DataTemplate
。实质上,基于用户执行的某个操作,ContentPresenter
将显示来自特定数据模板的数据。在数据模板中,我有DevExpress'GridControl
。它很糟糕,我讨厌它,但由于公司标准,我必须使用它。我的主要难点在于,由于此GridControl
,UI需要几个明显的秒才能呈现给数据模板。我能做些什么来减轻这种情况吗?我想显示一个“请稍候”的进度指示器,但即使这样也会卡住几秒钟......
请帮忙。
答案 0 :(得分:0)
您是否正在加载此视图的数据异步?
如果在显示视图时尚未加载数据,您可以尝试延迟加载,直到网格可见,加载数据并最终在代码隐藏中设置绑定到网格,如下所示:
private delegate void LoadDelegate();
this.Dispatcher.BeginInvoke(DispatcherPriority.Background, new LoadDelegate(LoadOrders));
这将使gui有机会在加载开始前展示自己。
HTH。