小编典典

在单独的线程中更新ObservableCollection

c#

在WPF应用程序中,LINQ将ObservableCollection填充并更新为SQL查询。然后,使用此ObservableCollection中的值更新UI对象。

通过LINQ将此ObservableCollection更新为SQL查询的操作是否在单独的线程中执行是否可能并且合理?

如果是,在这种情况下,它将是此ObservableCollection的一个实例吗?(我的意思是,如果从LINQ
datacontext获取值与提供值以更新UI的方式不同,那么我将无法更新UI)


阅读 510

收藏
2020-05-19

共1个答案

小编典典

使用内置ObservableCollection<T>类,如果将UI绑定到集合,则不能从单独的线程更改内容,它会引发NotSupportedException(但是,关于集合项属性的更改通知可以正常工作)。我编写了一个AsyncObservableCollection<T>来处理这种情况。它通过在UI同步上下文上调用事件处理程序来工作

2020-05-19