- Posizionamento corretto contextMenu in TreeView

- introduzione iconcine per parametri lavorazione in TopBar
- Miglioramento ControllerInput
This commit is contained in:
Emmanuele Sassi
2023-02-17 09:55:16 +01:00
parent ed1ac1b238
commit 1a34b2fef9
12 changed files with 155 additions and 126 deletions
+34 -35
View File
@@ -1,4 +1,5 @@
Imports System.Globalization
Imports System.Windows.Forms.VisualStyles.VisualStyleElement.TextBox
Imports System.Windows.Media.Media3D
Public Module TreeViewItemHelper
@@ -69,9 +70,16 @@ Public Module TreeViewItemHelper
Private Sub OnPreviewMouseRightButtonDown(ByVal sender As Object, ByVal e As MouseButtonEventArgs)
Dim treeViewItem As TreeViewItem = VisualUpwardSearch(Of TreeViewItem)(TryCast(e.OriginalSource, DependencyObject))
If treeViewItem IsNot Nothing Then
treeViewItem.IsSelected = True
Dim Tree As TreeView = VisualUpwardSearch(Of TreeView)(TryCast(treeViewItem, DependencyObject))
If Not IsNothing(Tree) Then
Dim myTransform As GeneralTransform = treeViewItem.TransformToAncestor(Tree)
Dim myOffset As Point = myTransform.Transform(New Point(0, 0))
treeViewItem.ContextMenu.HorizontalOffset = -treeViewItem.ActualWidth + (-myOffset.X) + Tree.ActualWidth - 3
treeViewItem.ContextMenu.VerticalOffset = -3
End If
e.Handled = True
End If
End Sub
@@ -97,7 +105,7 @@ Public Module TreeViewItemHelper
End Function
' Gestione indentazione sottoelementi
Public Function GetDepth(ByVal item As TreeViewItem) As Integer
Public Function GetDepth(item As TreeViewItem) As Integer
Dim parent As TreeViewItem = GetParent(item)
If Not IsNothing(parent) Then Return GetDepth(parent) + 1
@@ -105,7 +113,7 @@ Public Module TreeViewItemHelper
Return 0
End Function
Private Function GetParent(ByVal item As TreeViewItem) As TreeViewItem
Private Function GetParent(item As TreeViewItem) As TreeViewItem
Dim parent As DependencyObject = If(Not IsNothing(item), VisualTreeHelper.GetParent(item), Nothing)
While Not IsNothing(parent) AndAlso Not (TypeOf parent Is TreeViewItem OrElse TypeOf parent Is TreeView)
@@ -115,6 +123,29 @@ Public Module TreeViewItemHelper
Return TryCast(parent, TreeViewItem)
End Function
Private Function GetTreeParent(item As TreeViewItem) As TreeViewItem
Dim parent As DependencyObject = If(Not IsNothing(item), VisualTreeHelper.GetParent(item), Nothing)
While Not IsNothing(parent) AndAlso Not (TypeOf parent Is TreeViewItem OrElse TypeOf parent Is TreeView)
parent = VisualTreeHelper.GetParent(parent)
End While
Return TryCast(parent, TreeViewItem)
End Function
' Gestione indentazione sottoelementi
Public Function GetHeight(Item As TreeViewItem, SearchedItem As TreeViewItem, ByRef nHeight As Integer) As Boolean
Dim Index As Integer = 0
While Index <= Item.Items.Count - 1
If GetHeight(Item.Items(Index), SearchedItem, nHeight) Then
nHeight += 1
Return True
End If
Index += 1
End While
Return False
End Function
End Module
Public Class LeftMarginMultiplierConverter
@@ -132,35 +163,3 @@ Public Class LeftMarginMultiplierConverter
Throw New System.NotImplementedException()
End Function
End Class
Public Class Treeview_MenuContext_VerticalOffset_Converter
Implements IValueConverter
Public Function Convert(value As Object, targetType As Type, parameter As Object, culture As CultureInfo) As Object Implements IValueConverter.Convert
If TypeOf value Is Double Then
Return -CDbl(value)
End If
Return 0
End Function
Public Function ConvertBack(value As Object, targetType As Type, parameter As Object, culture As CultureInfo) As Object Implements IValueConverter.ConvertBack
Throw New NotImplementedException()
End Function
End Class
Public Class Treeview_MenuContext_HorizontalOffset_Converter
Implements IValueConverter
Public Function Convert(value As Object, targetType As Type, parameter As Object, culture As CultureInfo) As Object Implements IValueConverter.Convert
If TypeOf value Is Double Then
Return CDbl(value) - 5
End If
Return 0
End Function
Public Function ConvertBack(value As Object, targetType As Type, parameter As Object, culture As CultureInfo) As Object Implements IValueConverter.ConvertBack
Throw New NotImplementedException()
End Function
End Class
@@ -1,10 +1,16 @@
<UserControl x:Class="ControllerInputPanelV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
Height="32">
<Border x:Class="ControllerInputPanelV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
Height="38"
Visibility="{Binding DoneBtn_Visibility}"
HorizontalAlignment="Left"
Margin="45,0,0,0"
Padding="0"
Style="{StaticResource ViewLayerManager_Border}">
<StackPanel Orientation="Horizontal">
<StackPanel Orientation="Horizontal"
Margin="2.5">
<StackPanel.Style>
<Style TargetType="{x:Type StackPanel}">
<Style.Triggers>
@@ -16,31 +22,46 @@
</StackPanel.Style>
<TextBlock Text="{Binding Message}"
Visibility="{Binding Message_Visibility}"
Style="{StaticResource OptionTextBlock}"/>
Margin="2.5,0,2.5,0"
Style="{StaticResource ControllerInput_TextBlock}"/>
<TextBox Text="{Binding Text, UpdateSourceTrigger=PropertyChanged}"
Width="200"
Visibility="{Binding Text_Visibility}" Margin="5,0,5,0"
Visibility="{Binding Text_Visibility}"
Margin="2.5,0,2.5,0"
Style="{StaticResource ControllerInputPanel_TextBox}">
<TextBox.InputBindings>
<KeyBinding Key="Enter" Command="{Binding Done_Command, UpdateSourceTrigger=PropertyChanged}"/>
<KeyBinding Key="S" Modifiers="Control" Command="{Binding Show_Command}"/>
</TextBox.InputBindings>
</TextBox>
<CheckBox Content="{Binding CheckBoxText}" IsChecked="{Binding IsChecked}"
Visibility="{Binding Check_Visibility}" Margin="5,0,5,0"
<CheckBox Content="{Binding CheckBoxText}"
IsChecked="{Binding IsChecked}"
Visibility="{Binding Check_Visibility}"
Margin="2.5,0,2.5,0"
VerticalAlignment="Center"/>
<ComboBox ItemsSource="{Binding ComboItemsList}" SelectedIndex="{Binding ComboSelectedIndex}"
Visibility="{Binding Combo_Visibility}" Margin="5,0,5,0"/>
<Grid Margin="5,0,5,0">
<ComboBox ItemsSource="{Binding ComboItemsList}"
SelectedIndex="{Binding ComboSelectedIndex}"
Visibility="{Binding Combo_Visibility}"
Margin="2.5,0,2.5,0"/>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Button Command="{Binding Show_Command}" Visibility="{Binding ShowBtn_Visibility}"
Content="{Binding ShowMsg}" Style="{StaticResource EgtWPFLib5_InputButton}"/>
<Button Command="{Binding Done_Command}" Visibility="{Binding DoneBtn_Visibility}"
Grid.Column="1"
Content="{Binding OkMsg}" Style="{StaticResource EgtWPFLib5_InputButton}"/>
<Button Command="{Binding Show_Command}"
Visibility="{Binding ShowBtn_Visibility}"
Content="{Binding ShowMsg}"
Margin="2.5,0,2.5,0"
Style="{StaticResource EgtWPFLib5_InputButton}"/>
<Button Grid.Column="1"
Content="{Binding OkMsg}"
Command="{Binding Done_Command}"
Visibility="{Binding DoneBtn_Visibility}"
Margin="2.5,0,2.5,0"
Style="{StaticResource EgtWPFLib5_InputButton}">
<!--<Image Source="\Resources\"/>-->
</Button>
</Grid>
</StackPanel>
</UserControl>
</Border>
+7 -1
View File
@@ -733,7 +733,13 @@
<ItemGroup>
<Resource Include="Resources\MachiningDb\Edit.png" />
</ItemGroup>
<ItemGroup />
<ItemGroup>
<Resource Include="Resources\TopPanel\Offset.png" />
<Resource Include="Resources\TopPanel\SlicingDirection.png" />
<Resource Include="Resources\TopPanel\StrandCount.png" />
<Resource Include="Resources\TopPanel\StrandH.png" />
<Resource Include="Resources\TopPanel\StrandW.png" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
<PropertyGroup>
<PostBuildEvent>IF "$(PlatformName)"=="x86" IF "$(ConfigurationName)" == "Release" copy $(TargetPath) c:\EgtProg\Icarus\IcarusR32.exe
+20 -27
View File
@@ -29,11 +29,14 @@
<TextBlock Text="Part Entity List"
Margin="0,2.5,0,2.5"
Style="{StaticResource Title_TextBlock}"/>
<TreeView Grid.Row="1"
<TreeView x:Name="ManagerPartTreeView"
Grid.Row="1"
ItemsSource="{Binding ManagerPartList}"
MinHeight="200"
IsEnabled="{Binding IsEnabled}"
Margin="0,2.5,0,2.5">
Margin="0,2.5,0,2.5"
FontSize="12"
Foreground="{StaticResource Icarus_Gray}">
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type local:ManagePart_Part}"
ItemsSource="{Binding LayerList}">
@@ -42,29 +45,32 @@
Height="15"/>-->
<Grid>
<TextBlock Text="{Binding sName}"
Visibility="{Binding TextBlock_Visibility}"/>
Visibility="{Binding TextBlock_Visibility}"
Style="{StaticResource BaseTextBlock}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding sName, UpdateSourceTrigger=Explicit}"
IsExplicitFocused="{Binding UserShouldEditValueNow}"
Visibility="{Binding TextBox_Visibility}"
Style="{StaticResource OptionTextBox}"/>
IsExplicitFocused="{Binding UserShouldEditValueNow}"
Visibility="{Binding TextBox_Visibility}"
Style="{StaticResource OptionTextBox}"/>
</Grid>
</StackPanel>
</HierarchicalDataTemplate>
<HierarchicalDataTemplate DataType="{x:Type local:ManagePart_Layer}"
ItemsSource="{Binding EntityList, UpdateSourceTrigger=PropertyChanged}">
ItemsSource="{Binding EntityList, UpdateSourceTrigger=PropertyChanged}">
<StackPanel Orientation="Horizontal">
<!--<Image Source="/Resources/TreeView/Folder.png"
Height="15"/>-->
<TextBlock Text="{Binding sName}" />
<TextBlock Text="{Binding sName}"
Style="{StaticResource BaseTextBlock}"/>
</StackPanel>
</HierarchicalDataTemplate>
<HierarchicalDataTemplate DataType="{x:Type local:PartManager_GeomEntity}">
<Grid>
<TextBlock Text="{Binding sName}" />
<TextBlock Text="{Binding sName}"
Style="{StaticResource BaseTextBlock}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding sName, UpdateSourceTrigger=Explicit}"
IsExplicitFocused="{Binding UserShouldEditValueNow}"
Visibility="{Binding TextBox_Visibility}"
Style="{StaticResource OptionTextBox}"/>
IsExplicitFocused="{Binding UserShouldEditValueNow}"
Visibility="{Binding TextBox_Visibility}"
Style="{StaticResource OptionTextBox}"/>
</Grid>
</HierarchicalDataTemplate>
<!-- Menu' tasto destro -->
@@ -84,21 +90,7 @@
<Setter Property="IsSelected" Value="{Binding bIsSelected, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
<Setter Property="IsExpanded" Value="True"/>
<Setter Property="ContextMenu" Value="{StaticResource RowMenu}"/>
<Setter Property="ContextMenuService.Placement" Value="Bottom" />
<Setter Property="ContextMenuService.HorizontalOffset" Value="{Binding ActualWidth,
RelativeSource={RelativeSource AncestorType={x:Type TreeView}},
Converter={StaticResource Treeview_MenuContext_HorizontalOffset_Converter}}" />
<!--<Setter Property="ContextMenuService.HorizontalOffset">
<Setter.Value>
<MultiBinding Converter="{StaticResource Treeview_MenuContext_HorizontalOffset_Converter}">
<Binding Path="ActualWidth" RelativeSource="{RelativeSource AncestorType={x:Type TreeView}}"/>
<Binding Path="ContextMenu.ActualWidth" RelativeSource="{RelativeSource Self}"/>
</MultiBinding>
</Setter.Value>
</Setter>-->
<Setter Property="ContextMenuService.VerticalOffset" Value="{Binding ActualHeight,
RelativeSource={RelativeSource Self},
Converter={StaticResource Treeview_MenuContext_VerticalOffset_Converter}}" />
<Setter Property="ContextMenuService.Placement" Value="Right"/>
<EventSetter Event="ContextMenuOpening" Handler="Item_ContextMenuOpening"/>
</Style>
</TreeView.ItemContainerStyle>
@@ -133,6 +125,7 @@
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
<Setter Property="ContextMenu" Value="{StaticResource RowMenu}" />
<Setter Property="ContextMenuService.Placement" Value="Right" />
<Setter Property="ContextMenuService.VerticalOffset" Value="-3" />
</Style>
</ListBox.ItemContainerStyle>
<ListBox.ItemTemplate>
+1 -2
View File
@@ -29,8 +29,7 @@
<!--StatusBar -->
<PrintApp:ControllerInputPanelV Grid.Row="1"
Grid.ColumnSpan="2"
DataContext="{StaticResource ControllerInputPanelVM}"
HorizontalAlignment="Center"/>
DataContext="{StaticResource ControllerInputPanelVM}"/>
<PrintApp:ShowPanelV Grid.Column="2"
Grid.Row="1"
DataContext="{StaticResource ShowPanelVM}"/>
Binary file not shown.

After

Width:  |  Height:  |  Size: 850 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 966 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 357 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 396 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 408 B

+29 -10
View File
@@ -180,49 +180,68 @@
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1.5*"/>
</Grid.ColumnDefinitions>
<TextBlock Text="Slicing direction:"
<Image Source="/Resources/TopPanel/SlicingDirection.png"
ToolTip="Slicing direction"
Style="{StaticResource Button_Image}"/>
<!--<TextBlock Text="Slicing direction:"
VerticalAlignment="Bottom"
Style="{StaticResource TopPanelFixed_TextBlock}"/>
Style="{StaticResource TopPanelFixed_TextBlock}"/>-->
<TextBlock Grid.Column="1"
Text="{Binding CurrMachining.sCurrSlicingType}"
HorizontalAlignment="Left"
VerticalAlignment="Bottom"
Margin="5,0,5,0"
Style="{StaticResource TopPanelData_TextBlock}"/>
<TextBlock Grid.Column="2"
<Image Grid.Column="2"
Source="/Resources/TopPanel/StrandH.png"
ToolTip="Strand Height"
Style="{StaticResource Button_Image}"/>
<!--<TextBlock Grid.Column="2"
Text="StrandH:"
VerticalAlignment="Bottom"
Style="{StaticResource TopPanelFixed_TextBlock}"/>
Style="{StaticResource TopPanelFixed_TextBlock}"/>-->
<TextBlock Grid.Column="3"
Text="{Binding CurrMachining.sCurrStrandH}"
HorizontalAlignment="Left"
VerticalAlignment="Bottom"
Margin="5,0,5,0"
Style="{StaticResource TopPanelData_TextBlock}"/>
<TextBlock Grid.Column="4"
<Image Grid.Column="4"
Source="/Resources/TopPanel/StrandW.png"
ToolTip="Strand Width"
Style="{StaticResource Button_Image}"/>
<!--<TextBlock Grid.Column="4"
Text="StrandW:"
VerticalAlignment="Bottom"
Style="{StaticResource TopPanelFixed_TextBlock}"/>
Style="{StaticResource TopPanelFixed_TextBlock}"/>-->
<TextBlock Grid.Column="5"
Text="{Binding CurrMachining.sCurrStrandW}"
HorizontalAlignment="Left"
VerticalAlignment="Bottom"
Margin="5,0,5,0"
Style="{StaticResource TopPanelData_TextBlock}"/>
<TextBlock Grid.Column="6"
<Image Grid.Column="6"
Source="/Resources/TopPanel/StrandCount.png"
ToolTip="Strand Count"
Style="{StaticResource Button_Image}"/>
<!--<TextBlock Grid.Column="6"
Text="StrandCount:"
VerticalAlignment="Bottom"
Style="{StaticResource TopPanelFixed_TextBlock}"/>
Style="{StaticResource TopPanelFixed_TextBlock}"/>-->
<TextBlock Grid.Column="7"
Text="{Binding CurrMachining.sCurrStrandCount}"
HorizontalAlignment="Left"
VerticalAlignment="Bottom"
Margin="5,0,5,0"
Style="{StaticResource TopPanelData_TextBlock}"/>
<TextBlock Grid.Column="8"
<Image Grid.Column="8"
Source="/Resources/TopPanel/Offset.png"
ToolTip="Offset"
Style="{StaticResource Button_Image}"/>
<!--<TextBlock Grid.Column="8"
Text="Offset:"
VerticalAlignment="Bottom"
Style="{StaticResource TopPanelFixed_TextBlock}"/>
Style="{StaticResource TopPanelFixed_TextBlock}"/>-->
<TextBlock Grid.Column="9"
Text="{Binding CurrMachining.sCurrOffset}"
HorizontalAlignment="Left"
+24 -32
View File
@@ -779,6 +779,11 @@
<Setter Property="HorizontalAlignment" Value="Left"/>
<Setter Property="VerticalAlignment" Value="Center"/>
</Style>
<Style x:Key="ControllerInput_TextBlock" TargetType="{x:Type TextBlock}" BasedOn="{StaticResource BaseTextBlock}">
<Setter Property="HorizontalAlignment" Value="Left"/>
<Setter Property="VerticalAlignment" Value="Center"/>
</Style>
<!-- ______________________________________________________________________________________________________________________________________________ -->
@@ -786,6 +791,10 @@
<Style TargetType="{x:Type EgtWPFLib5:EgtTextBox}" BasedOn="{StaticResource {x:Type EgtWPFLib5:EgtTextBox}}">
<Setter Property="Height" Value="22"/>
<Setter Property="FontFamily" Value="/Resources/Fonts/#Roboto"/>
<Setter Property="FontWeight" Value="Normal"/>
<Setter Property="FontSize" Value="12"/>
<Setter Property="Foreground" Value="{StaticResource Icarus_Gray}"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="HorizontalContentAlignment" Value="Right"/>
<Setter Property="ExplicitUpdateSource" Value="EnterKeyPress"/>
@@ -829,7 +838,7 @@
<Setter Property="HorizontalContentAlignment" Value="Right"/>
</Style>
<Style x:Key="ControllerInputPanel_TextBox" TargetType="{x:Type TextBox}" BasedOn="{StaticResource {x:Type TextBox}}">
<Style x:Key="ControllerInputPanel_TextBox" TargetType="{x:Type TextBox}" BasedOn="{StaticResource BaseTextBox}">
<Setter Property="Height" Value="22"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="HorizontalContentAlignment" Value="Right"/>
@@ -1385,8 +1394,8 @@
<Setter Property="Background" Value="White"/>
<Setter Property="BorderBrush" Value="White"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="CornerRadius" Value="4,4,4,4"/>
<Setter Property="Padding" Value="5"/>
<Setter Property="CornerRadius" Value="4"/>
<Setter Property="Padding" Value="0"/>
</Style>
<!--<Style x:Key="ToggleButton_ControlTemplate_Border" TargetType="Border">
@@ -1431,8 +1440,6 @@
<!-- TreeViewItem -->
<PrintApp:LeftMarginMultiplierConverter Length="19" x:Key="lengthConverter" />
<PrintApp:Treeview_MenuContext_HorizontalOffset_Converter x:Key="Treeview_MenuContext_HorizontalOffset_Converter"/>
<PrintApp:Treeview_MenuContext_VerticalOffset_Converter x:Key="Treeview_MenuContext_VerticalOffset_Converter"/>
<SolidColorBrush x:Key="TreeViewItem.TreeArrow.Static.Circle.Stroke" Color="{StaticResource Icarus_Gray_Color}"/>
<SolidColorBrush x:Key="TreeViewItem.TreeArrow.Static.Circle.Fill" Color="White"/>
<SolidColorBrush x:Key="TreeViewItem.TreeArrow.Static.Arrow.Stroke" Color="{StaticResource Icarus_Gray_Color}"/>
@@ -1449,7 +1456,6 @@
<SolidColorBrush x:Key="Item.SelectedActive.Border" Color="#FF26A0DA"/>
<SolidColorBrush x:Key="Item.SelectedInactive.Background" Color="#3DDADADA"/>
<SolidColorBrush x:Key="Item.SelectedInactive.Border" Color="#FFDADADA"/>
<!--<PathGeometry x:Key="TreeArrow" Figures="M0,0 L0,6 L6,0 z"/>-->
<Style x:Key="ExpandCollapseToggleStyle" TargetType="{x:Type ToggleButton}">
<Setter Property="Focusable" Value="False"/>
<Setter Property="Width" Value="12"/>
@@ -1502,7 +1508,10 @@
<Setter Property="HorizontalContentAlignment" Value="{Binding HorizontalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}"/>
<Setter Property="VerticalContentAlignment" Value="{Binding VerticalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}"/>
<Setter Property="Padding" Value="1,0,0,0"/>
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
<Setter Property="FontFamily" Value="/Resources/Fonts/#Roboto"/>
<Setter Property="FontWeight" Value="Normal"/>
<Setter Property="FontSize" Value="12"/>
<Setter Property="Foreground" Value="{StaticResource Icarus_Gray}"/>
<Setter Property="FocusVisualStyle" Value="{StaticResource TreeViewItemFocusVisual}"/>
<Setter Property="Template">
<Setter.Value>
@@ -1537,30 +1546,6 @@
</Border>
<ItemsPresenter x:Name="ItemsHost" Grid.Column="1" Grid.Row="1"/>
</Grid>
<!--<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition MinWidth="16" Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition/>
</Grid.RowDefinitions>
<ToggleButton x:Name="Expander"
ClickMode="Press"
IsChecked="{Binding IsExpanded, RelativeSource={RelativeSource TemplatedParent}}"
Style="{StaticResource ExpandCollapseToggleStyle}"/>
<Border x:Name="Bd"
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Grid.Column="1"
Padding="{TemplateBinding Padding}"
SnapsToDevicePixels="true">
<ContentPresenter x:Name="PART_Header" ContentSource="Header" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
</Border>
<ItemsPresenter x:Name="ItemsHost" Grid.Column="1" Grid.Row="1"/>
</Grid>-->
<ControlTemplate.Triggers>
<Trigger Property="IsExpanded" Value="false">
<Setter Property="Visibility" TargetName="ItemsHost" Value="Collapsed"/>
@@ -1629,7 +1614,14 @@
<Setter.Value>
<ControlTemplate TargetType="{x:Type TreeView}">
<Border x:Name="Bd" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" SnapsToDevicePixels="true">
<ScrollViewer x:Name="_tv_scrollviewer_" Background="{TemplateBinding Background}" CanContentScroll="false" Focusable="false" HorizontalScrollBarVisibility="{TemplateBinding ScrollViewer.HorizontalScrollBarVisibility}" Padding="{TemplateBinding Padding}" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalScrollBarVisibility="{TemplateBinding ScrollViewer.VerticalScrollBarVisibility}">
<ScrollViewer x:Name="_tv_scrollviewer_"
Background="{TemplateBinding Background}"
CanContentScroll="false"
Focusable="false"
HorizontalScrollBarVisibility="{TemplateBinding ScrollViewer.HorizontalScrollBarVisibility}"
Padding="{TemplateBinding Padding}"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
VerticalScrollBarVisibility="{TemplateBinding ScrollViewer.VerticalScrollBarVisibility}">
<ItemsPresenter/>
</ScrollViewer>
</Border>