/// <summary> /// Open the dialog /// </summary> private void Segment_dialog_Open(object sender, RoutedEventArgs e) { // Set dataItem as current item ListViewItem currentItem = _listTable.GetParentListViewItem(e.OriginalSource as FrameworkElement); Oltp.SegmentRow row = currentItem.Content as Oltp.SegmentRow; // Show the dialog Segment_dialog.Title = row.Name; Segment_dialog.TitleTooltip = row.SegmentID.ToString(); Segment_dialog.BeginEdit( Dialog_MakeEditVersion <Oltp.SegmentDataTable, Oltp.SegmentRow>(row), row ); TabControl tabs = VisualTree.GetChild <TabControl>(Segment_dialog); TabItem tabItem = (TabItem)tabs.ItemContainerGenerator.ContainerFromIndex(tabs.SelectedIndex); if (tabItem != null) { tabItem.RaiseEvent(new RoutedEventArgs(TabItem.GotFocusEvent, tabItem)); } // When opening, select it only if no more than one is already selected if (_listTable.ListView.SelectedItems.Count < 2) { _listTable.ListView.SelectedItems.Clear(); currentItem.IsSelected = true; } }
/*=========================*/ #endregion #region Profiles /*=========================*/ /// <summary> /// /// </summary> private void Segment_Add(object sender, RoutedEventArgs e) { // Create an editable new ro Oltp.SegmentRow editVersion = Dialog_MakeEditVersion <Oltp.SegmentDataTable, Oltp.SegmentRow>(null); editVersion.AccountID = this.Window.CurrentAccount.ID; // Show the dialog Segment_dialog.Title = "New Segment"; Segment_dialog.BeginEdit(editVersion, _segments); }