private void delete_Click(object sender, RoutedEventArgs e) { var fe = sender as FrameworkElement; if (fe == null) { return; } var set = tbSelectSet.DataContext as TSetView; if (set == null || set.SetName == _voidSetName) { return; } if (!set.UserGlobalSetsId.HasValue && !set.IsUseGlobalTable && set.Dict != null && set.Dict.Remove(set.SetName)) { //Если это старый набор, не из глобальной таблицы Manager.SaveConfig(true); return; } Manager.UI.ShowYesNoDialog("Вы действительно хотите удалить набор \"" + set.SetName + "\"?", delegate { //if (set.IsUseGlobalTable) { try { var res = ARM_Service.Expl_Delete_GlobalSet(set.UserGlobalSetsId.Value); if (res == null) { return; } if (res != string.Empty) { ShowMessage(res); return; } } catch (Exception ex) { ShowMessage("Ошибка удаления набора:\n" + ex.Message); return; } } //Если это старый набор, не из глобальной таблицы if (!set.IsUseGlobalTable && set.Dict != null && set.Dict.Remove(set.SetName)) { Manager.SaveConfig(true); } lock (_dictSyncLock) { _dict.Remove(set); } cbIsGlobalSet.IsChecked = cbIsReadOnly.IsChecked = cbIsReadOnly.IsEnabled = false; lock (_dictSyncLock) { set = _dict.FirstOrDefault(d => d.SetName == _voidSetName); } if (set != null) { set.IsSelected = true; tbSelectSet.DataContext = set; } //cbSets.SelectedIndex = 0; if (Changed != null) { Changed(null, 0); } }); }