如何解决WPF在TreeView上使用TreeViewItem触发器设置属性
如何在父项TreeView
上设置属性而在子项TreeViewItem
上设置触发器?通常,我会使用TargetName
中的Setter
来指示目标,但是由于“ 无法识别名称“ tv” ”。
<TreeView Name="tv" ItemsSource="{Binding Items}">
<TreeView.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}">
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter TargetName="tv" Property="Background" Value="Purple"/>
</Trigger>
</Style.Triggers>
</Style>
</TreeView.ItemContainerStyle>
</TreeView>
为了清楚起见,在此示例中,我不想设置TreeViewItem的背景,我真的想在TreeView本身上设置属性。
编辑:
我试图通过举一个简单的例子来使问题尽可能简单,但实际问题有所不同。我已经制作了一个自定义TreeView
,它有一个名为DependencyProperty
的{{1}},绑定到LinkedHighlightedItem
中的一个属性。当鼠标悬停在ViewModel
上时,我还要从DependencyProperty
设置此View
。因此,我想将自定义TreeViewItem
的{{1}}属性设置为鼠标悬停时的当前LinkedHighlightedItem
。像这样:
LinkedTreeView
但是我无法从那里访问TreeViewItem
。附加的属性IsMouseDirectlyOver是基于this帖子的,适用于任何有兴趣做同一件事的人。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。