public QuickAccessMemorySettingViewModel(Func <IRangeViewModel> rangeViewModelGettingFunc, ITypesContainer container) { _rangeViewModelGettingFunc = rangeViewModelGettingFunc; _container = container; AddRangeCommand = new RelayCommand(OnAddRangeExecute); DeleteRangeCommand = new RelayCommand(OnDeleteRangeExecute, CanExecuteDeleteRange); RangeViewModels = new ObservableCollection <IRangeViewModel>(); _quickMemoryAccessSetting = container.Resolve <IFragmentSetting>(ApplicationGlobalNames.QUICK_ACCESS_MEMORY_CONFIGURATION_SETTING) as IQuickMemoryAccessSetting; }
private void SetModel(object value) { if (value is IQuickMemoryAccessSetting) { IQuickMemoryAccessSetting setting = value as IQuickMemoryAccessSetting; _quickMemoryAccessSetting = setting; foreach (IRange range in setting.QuickAccessAddressRanges) { IRangeViewModel rangeViewModel = _rangeViewModelGettingFunc(); rangeViewModel.RangeFrom = range.RangeFrom.ToString(); rangeViewModel.RangeTo = range.RangeTo.ToString(); RangeViewModels.Add(rangeViewModel); } IsSettingEnabled = _quickMemoryAccessSetting.IsSettingEnabled; } }