首页 > 其他 > 详细

MVVM Light Toolkit

时间:2014-05-09 04:13:57      阅读:403      评论:0      收藏:0      [点我收藏+]

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:

bubuko.com,布布扣
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>();
            }
        }
bubuko.com,布布扣

 

 

 

 

 

MVVM Light Toolkit,布布扣,bubuko.com

MVVM Light Toolkit

原文:http://www.cnblogs.com/leihdm/p/3716355.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!