我正在使用Sasha Barber的MVVM框架在WPF中开发一个应用程序。这个应用程序显示两个选项卡。MainWindowViewModel启动了一个后台worker,监听传入的套接字连接。如果客户端通过套接字连接连接到应用程序,则应用程序应该显示另一个选项卡。我设置好了一切,但当我尝试将新的工作区添加到视图集合时,我收到一个错误,这只能在调度程序线程中完成,但MainWindowViewModel中没有调度程序。因此,我的问题是:如何将此工作区添加到视图集合中?
问候和感谢Knutman
您可以在VM基类中添加以下实现的属性。
public class ViewModelBase : ....
{
protected Dispatcher Dispatcher
{
get { return Application.Current.Dispatcher; }
}
}
现在您的VM中有了一个调度程序。欲了解更多信息,请点击这里。或者您只需在需要它的地方使用Application.Current.Dispatcher