AutoRefresh Entity和Freezing UI

时间:2016-07-06 09:32:32

标签: c# wpf vb.net entity-framework mvvm

我使用的解决方案来自:AutoRefresh Entity Framework

我有 DataGrid 和其他控件(图表等)。我想实时更新这些控件。多亏了这个解决方案,我能够做到这一点。

使用此代码:

TeamLeaderMetrics = New AutorefreshWrapper(Of tbl_Metrics_Employee)((From a In entityconn.tbl_Metrics_TeamLeader Where a.LogDate = Date.Today AndAlso a.EEID = EEID()), entityconn, RefreshMode.StoreWins)

TeamLeaderMetrics的位置 Private _TeamLeaderMetrics As AutoRefreshWrapper(Of tbl_Metrics_Employee)属性,即我的 DataGrid ItemsSource

它有效,一切都在更新。但是,问题在于UI正在冻结。

ServiceBrokerUtility静态类依赖项中 - OnChange正在使用:

Application.Current.Dispatcher.BeginInvoke(DirectCast(Sub() notifyRefresh.OnRefresh(), Action))

所以我认为它在后台运行,但UI仍然冻结。

如何在不实时冻结UI的情况下更新控件?我应该以除 ViewModel 控制器之外的其他方式调用此解决方案吗?

感谢您的任何建议。

0 个答案:

没有答案