如何突出显示具有某种颜色的树视图选定项目?

我在WPF中有一个树视图。 当我选择treeviewitem时,我想要一种不同的颜色。

TreeView.ItemContainerStyle中的简单触发器无法帮助默认的TreeView模板。

对于标准模板,突出显示是通过特定背景更改完成的 TreeView模板中的元素。 没有TreeView模板更改的程序员无法访问此特定元素。 默认资源 用于在此元素上设置背景以突出显示。

所以有几种方法:

  1. 简单(但可能产生副作用):使用键{x:Static SystemColors.HighlightBrushKey}为TreeView或ItemsPanel模板重新定义资源;
  2. 重新定义TreeView的完整模板。

请尝试以下代码。 它应该工作。