如何将TreeViewItem悬停在其上时更改背景颜色?
在阅读了几篇文章/问题后,包括这篇文章WPF TreeView Highlight Row On Hover,我认为采取的相应措施是为我的TreeView创建一个样式模板:
<Style x:Key="TreeViewItemStyle1" TargetType="{x:Type TreeViewItem}">
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="Green" />
</Trigger>
</Style.Triggers>
</Style>
然后将其分配给我的TreeView:
<TreeView ItemsSource="{Binding Folders}"
ItemContainerStyle="{DynamicResource TreeViewItemStyle1}"/>
但这似乎不起作用。它会改变颜色,因为我将鼠标悬停在它上面,但它会突出显示,使我的TreeView看起来完全搞砸了:
当IsMouseOver为false时,我尝试重置颜色:
<Trigger Property="IsMouseOver" Value="False">
<Setter Property="Background" Value="White" />
</Trigger>
但它仍然会突出显示多个节点,并且当我一次移动它们时只会重置它们。
有什么想法吗?
感谢。