wpf 设置treeView节点选中后的的文字颜色、节点的背景色以及节点失去焦点后的背景颜色

原文: wpf 设置treeView节点选中后的的文字颜色、节点的背景色以及节点失去焦点后的背景颜色


  
  
  1. <TreeView Margin= "20,10,0,0" BorderThickness= "0" Background= "#1b222d" VirtualizingStackPanel.IsVirtualizing= "False"
  2. scroll:TreeViewScrollToViewBehavior.TreeViewSelectedItem= "{Binding SelectedNode,UpdateSourceTrigger=PropertyChanged,Mode=TwoWay}"
  3. ItemsSource= "{Binding BuildingInfoNodes,UpdateSourceTrigger=PropertyChanged,Mode=TwoWay}">
  4. <TreeView.ItemContainerStyle>
  5. <Style TargetType= "{x:Type TreeViewItem}">
  6. <Setter Property= "IsExpanded" Value= "{Binding IsExpanded,UpdateSourceTrigger=PropertyChanged,Mode=TwoWay}"/>
  7. <Setter Property= "IsSelected" Value= "{Binding IsSelected,UpdateSourceTrigger=PropertyChanged,Mode=TwoWay}"/>
  8. <Style.Resources>
  9. <!--SelectedItem with focus-->设置为treeView的背景色
  10. <SolidColorBrush x:Key= "{x:Static SystemColors.HighlightBrushKey}" Color= "#1b222d" Opacity= "0"/>
  11. <!--SelectedItem without focus-->
  12. <SolidColorBrush x:Key= "{x:Static SystemColors.ControlBrushKey}" Color= "#1b222d" Opacity= "0"/>
  13. </Style.Resources>
  14. </Style>
  15. </TreeView.ItemContainerStyle>
  16. <TreeView.ItemTemplate>
  17. <HierarchicalDataTemplate ItemsSource= "{Binding Children,UpdateSourceTrigger=PropertyChanged,Mode=TwoWay}">
  18. <StackPanel Orientation= "Horizontal" Background= "#1b222d" Margin= "-1,0,0,0">“ -1可以使失去焦点后的前面的竖条去掉”
  19. <Image Visibility= "{Binding HasNodeImage,UpdateSourceTrigger=PropertyChanged,Mode=TwoWay,Converter={StaticResource BoolToVisibility}}"
  20. Width= "17" Height= "15" Source= "{Binding NodeImagePath,UpdateSourceTrigger=PropertyChanged,Mode=TwoWay}"
  21. />
  22. <TextBlock Margin= "0,10,0,0" Height= "22" FontSize= "14"
  23. Foreground= "{Binding SelectedForeground,UpdateSourceTrigger=PropertyChanged,Mode=TwoWay}"
  24. Text= "{Binding Name,UpdateSourceTrigger=PropertyChanged,Mode=TwoWay}"/>
  25. </StackPanel>
  26. </HierarchicalDataTemplate>
  27. </TreeView.ItemTemplate>
  28. <it:Interaction.Triggers>
  29. <it:EventTrigger EventName= "SelectedItemChanged">
  30. <it:InvokeCommandAction Command= "{Binding BuildingInfoNodeSelectedChangedCommand}"/>
  31. </it:EventTrigger>
  32. </it:Interaction.Triggers>
  33. </TreeView>

猜你喜欢

转载自www.cnblogs.com/lonelyxmas/p/12758016.html