ViewModelLocator.cs 782 B

12345678910111213141516171819202122232425262728293031323334
  1. using GalaSoft.MvvmLight;
  2. using GalaSoft.MvvmLight.Ioc;
  3. using Microsoft.Practices.ServiceLocation;
  4. using Editor.Model;
  5. namespace Editor.ViewModel
  6. {
  7. public class ViewModelLocator
  8. {
  9. static ViewModelLocator()
  10. {
  11. ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default);
  12. SimpleIoc.Default.Register<IDataService, DataService>();
  13. SimpleIoc.Default.Register<MainViewModel>();
  14. }
  15. [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance",
  16. "CA1822:MarkMembersAsStatic",
  17. Justification = "This non-static member is needed for data binding purposes.")]
  18. public MainViewModel Main
  19. {
  20. get
  21. {
  22. return ServiceLocator.Current.GetInstance<MainViewModel>();
  23. }
  24. }
  25. public static void Cleanup()
  26. {
  27. }
  28. }
  29. }