我有一个针对 MVVM 框架开发的 WPF 应用程序,其中 ViewModel 构造函数设置了一个带有 TimerCallback 的 Timer。
TimerCallback 检索 ObservableCollection 并将其传递给 VM 上的字段。
我有一个 CollectionViewSource,它的 Source 属性设置为 ObservableCollection。我正在使用 CollectionViewSource,因为我想对 Collection 启用过滤。
我发现当 TimerCallback 尝试将 ObservableCollection 传递到本地字段时,CollectionViewSource 的 Source 属性出现异常{“调用线程无法访问此对象,因为不同的线程拥有它。”}。
我理解这个异常(exception),但我有两个问题:
任何帮助表示赞赏!谢谢,
德拉米
最佳答案
DispatcherTimer
而不是您现在使用的计时器类,并确保在 UI 线程上创建它。 ObservableCollection
您的用户界面未更新。 关于wpf mvvm threading.Timer 和 TimerCallback 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5953087/