private void OnSaveCompleted(Dict_Balance_FreeHierarchy_Subsection subsection) { this.CloseModal(); if (subsection == null) { return; } var parent = this.FindParent <AddSubsectionPopup>(); if (_subsection == null || string.IsNullOrEmpty(_subsection.BalanceFreeHierarchySubsection_UN)) { //Это добавление нового подраздела _subsections.Add(subsection); if (parent != null) { parent.cbSubsections.SelectedItem = subsection; } } else { //Это редактирование названия var oldsubsection = _subsections.FirstOrDefault(s => string.Equals(s.BalanceFreeHierarchySubsection_UN, subsection.BalanceFreeHierarchySubsection_UN)); if (oldsubsection != null) { oldsubsection.BalanceFreeHierarchySubsectionName = subsection.BalanceFreeHierarchySubsectionName; } if (parent != null) { parent.cbSubsections.SelectedItem = oldsubsection; } } }
private void OnSaveCompleted(Dict_Balance_FreeHierarchy_Subsection subsection) { this.CloseModal(); if (subsection == null) { return; } var lcv = cbSubsections.ItemsSource as ListCollectionView; if (lcv == null) { return; } var subsections = lcv.SourceCollection as ObservableCollection <Dict_Balance_FreeHierarchy_Subsection>; if (subsections == null) { return; } var oldsubsection = subsections.FirstOrDefault(s => string.Equals(s.BalanceFreeHierarchySubsection_UN, subsection.BalanceFreeHierarchySubsection_UN)); if (oldsubsection != null) { oldsubsection.SubsectionType = 0; } lcv.Refresh(); }
public AddNewSubsectionControl(ObservableCollection <Dict_Balance_FreeHierarchy_Subsection> subsections, Dict_Balance_FreeHierarchy_Subsection subsection) { InitializeComponent(); _subsections = subsections; if (subsection != null) { tbSubsectionName.Text = subsection.BalanceFreeHierarchySubsectionName; _subsection = subsection; cbSubsectionTypes.IsEnabled = false; } else { _subsection = new Dict_Balance_FreeHierarchy_Subsection { }; } cbSubsectionTypes.ItemsSource = EnumClientServiceDictionary.FreeHierarchyBalanceSubsectionsTypes; cbSubsectionTypes.SelectedValue = _subsection.SubsectionType; Dispatcher.BeginInvoke((Action)(() => { tbSubsectionName.Focus(); tbSubsectionName.CaretIndex = tbSubsectionName.Text.Length; }), DispatcherPriority.Background); }
/// <summary> /// Перенос подраздела в общий раздел /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void butRemoveToMainClick(object sender, RoutedEventArgs e) { var fe = sender as FrameworkElement; if (fe == null) { return; } var subsection = fe.DataContext as Dict_Balance_FreeHierarchy_Subsection; if (subsection == null) { return; } Manager.UI.ShowYesNoDialog("Перенести \"" + subsection.BalanceFreeHierarchySubsectionName + "\" в общий раздел?", () => { var s = new Dict_Balance_FreeHierarchy_Subsection { BalanceFreeHierarchySubsection_UN = subsection.BalanceFreeHierarchySubsection_UN, BalanceFreeHierarchySubsectionName = subsection.BalanceFreeHierarchySubsectionName, }; tabsLayout.RunBackgroundAsync <Dict_Balance_FreeHierarchy_Subsection>("BL_SaveFreeHierarchyBalanceSubsection", OnSaveCompleted, EnumServiceType.ArmService, s, Manager.User.User_ID); }); }