示例#1
0
        /// <inheritdoc/>
        protected override void OnCancelEdit()
        {
            foreach (var label in _added)
            {
                CustomLabels.Remove(label);
                _labelService.RemoveCustomTextLabel(label);
            }

            foreach (var label in _removed)
            {
                CustomLabels.Add(label);
                _labelService.AddCustomTextLabel(label);
            }

            _added.Clear();
            _removed.Clear();
        }
示例#2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="CustomLabelsVM"/> class
        /// with the list of custom labels and a label host.
        /// </summary>
        /// <param name="appsettings">The app setings.</param>
        /// <param name="labelService">The host for the labels.</param>
        /// <param name="dialogService">The dialog service</param>
        public CustomLabelsVM(IAppSettings appsettings, ICustomLabelService labelService, IDialogService dialogService)
        {
            _dialogService = dialogService;
            _customLabels  = appsettings.CustomLabels;
            CustomLabels   = new ObservableCollection <CustomLabelVM>(_customLabels.Select(customLabel => new CustomLabelVM(customLabel, dialogService)));
            _labelService  = labelService;

            foreach (var customLabelVm in CustomLabels)
            {
                _labelService.AddCustomTextLabel(customLabelVm);
            }

            AddLabelCommand    = new RelayCommand(AddLabelCommandOnExecute);
            RemoveLabelCommand = new RelayCommand <CustomLabelVM>(RemoveLabelCommandOnExecute);
        }