我的ViewModel中使用Dispatcher是不是错了?我正在将我用c#winforms编写的游戏的聊天解析器转换为wpf,主要是为了更好地处理MVVM和wpf。这是我如何设置项目视图的故事:现在它只是一个简单的列表框,其中ItemSource绑定到我的视图模型可观察的聊天集合模型:我有多个角色可以一次登录,每个角色都有一个聊天类。Chat类从游戏中启动一个后台工作人员来抓取并与下一行聊天,然后使用该行来触发一个名为IncomingChat的事件。公共事件ActionIncomingChat;我正在使用后台工作人员在我的后台工作人员progresschaged事件上触发事件,因为我在使用计时器时一直遇到线程问题。起初我通过将Timer更改为DispatchTimer来纠正此问题,但在我的模型中使用DispatchTimer似乎不合适。ViewModel:因为我有多个角色,所以我创建了多个ChatViewModel。我将一个字符传递给ChatViewModels构造函数并订阅Chat事件。我创建了一个ObservableColleciton来在收到此事件时保留我的聊天行。现在,当我尝试将从聊天事件接收到的行添加到我的observablecollection时,我在viewModel上遇到了线程问题。我通过使我的视图模型传入聊天事件处理程序看起来像这个publicObservableCollection
