首页 > 代码库 > MVVM Light Toolkit
MVVM Light Toolkit
DispatcherHelper
因为 ViewModel 是一个 POCO,它不能访问 Dispatcher 属性,因此我需要通过另一种方式来访问主线程,以将操作加入队列中。这是 MVVM Light DispatcherHelper 组件的作用。
CheckBeginInvokeOnUI:
顾名思义,此方法首先执行检查。如果此方法的调用方已经在主线程上运行,则无需进行调度。在这种情况下会直接在主线程上立即执行委托。但如果此调用方是在后台线程上,则执行调度。
RaisePropertyChanged with CallerMemberName (.net 4.5 only):
protected void RaisePropertyChanged([CallerMemberName]string propertyName = "") { base.RaisePropertyChanged(propertyName); }
ServiceLocator and SimpelIoc:
App.xaml.cs:
<vm:ViewModelLocator x:Key="Locator" d:IsDataSource="True" />
Mainwindow.xaml:
...
DataContext="{Binding Main, Source={StaticResource Locator}}">
ViewModelLocator.cs:
static ViewModelLocator() { ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default); if (ViewModelBase.IsInDesignModeStatic) { SimpleIoc.Default.Register<IDataService, Design.DesignDataService>(); } else { SimpleIoc.Default.Register<IDataService, DataService>(); } SimpleIoc.Default.Register<MainViewModel>(); } public MainViewModel Main { get { return ServiceLocator.Current.GetInstance<MainViewModel>(); } }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。