public EditSchemeViewModel( IWindowManager windowManager, ISchemeStorageService schemeStorage, INavigationService navigationService, ISharingService sharingService, IBitmapService bitmapService) { this.windowManager = windowManager; this.schemeStorage = schemeStorage; this.navigationService = navigationService; this.sharingService = sharingService; this.bitmapService = bitmapService; Types = new BindableCollection <SchemeTypeViewModel> { new SchemeTypeViewModel(SchemeType.Complimentary, new ComplimentarySchemeEditorViewModel(windowManager)), new SchemeTypeViewModel(SchemeType.Analogous, new AnalogousSchemeEditorViewModel(windowManager)), new SchemeTypeViewModel(SchemeType.Triad, new TriadSchemeEditorViewModel(windowManager)), new SchemeTypeViewModel(SchemeType.Monochromatic, new MonochromeSchemeEditorViewModel(windowManager)), new SchemeTypeViewModel(SchemeType.Custom, new CustomSchemeEditorViewModel(windowManager)) }; SelectedType = Types[0]; foreach (var type in Types) { type.Editor.PropertyChanged += (s, e) => { NotifyOfPropertyChange(() => CanSave); NotifyOfPropertyChange(() => CanShare); }; } }
public SchemeListViewModel(INavigationService navigation, ISchemeStorageService schemeStorage) { this.navigation = navigation; this.schemeStorage = schemeStorage; Schemes = new BindableCollection <SchemeViewModel>(); }