private void ElementsTreeView_SizeChanged(object sender, SizeChangedEventArgs e) { ScrollViewer scrollViewer = SharedFunctions.FindVisualChildren <ScrollViewer>(sender as FrameworkElement).FirstOrDefault(); treeViewMargin = treeViewMargin ?? ((FrameworkElement)sender).Margin; if (scrollViewer.ComputedVerticalScrollBarVisibility == Visibility.Visible) { ((FrameworkElement)sender).Margin = new Thickness(0); } else { ((FrameworkElement)sender).Margin = (Thickness)treeViewMargin; } }
private void ContentGrid_PreviewMouseDown(object sender, MouseButtonEventArgs e) { TextBlock textBlock = SharedFunctions.FindVisualChildren <TextBlock>(sender as FrameworkElement).FirstOrDefault(); ToggleButton toggleButton = SharedFunctions.FindVisualChildren <ToggleButton>(sender as FrameworkElement).FirstOrDefault(); if (!nonExpandableElements.Contains(textBlock.Text)) { e.Handled = true; if (toggleButton.IsMouseOver) { TreeViewItem tvi = SharedFunctions.FindVisualParent <TreeViewItem>(sender as FrameworkElement); if (tvi.IsExpanded) { tvi.IsExpanded = false; } else { int counter = 0; tvi.IsExpanded = true; IEnumerable <TextBlock> valuesList = SharedFunctions.FindVisualChildren <TextBlock>(tvi as FrameworkElement); foreach (TextBlock tb in valuesList) { if (tb.Text == previewTreeViewItem) { break; } else { counter++; } } if (counter != valuesList.Count()) { tvi = SharedFunctions.FindVisualParent <TreeViewItem>(valuesList.ToList()[counter]); tvi.IsSelected = true; } } } } }
private void MainWindow_Loaded(object sender, RoutedEventArgs e) { SharedFunctions.TryFindAndExpandNode(ElementsTreeView, StaticResources.ElementsList.Document.FirstChild.ChildNodes, "Kanał prosty"); }
private void CommandComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e) { string itemName = ((ComboBoxItem)e.AddedItems[0]).Content.ToString(); SharedFunctions.TryFindAndExpandNode(ElementsTreeView, StaticResources.ElementsList.Document.FirstChild.ChildNodes, itemName); }