如果我设置TreeViewItem背景,它只突出显示标题.我怎样才能突出整条线?
我发现了一个几乎解决问题的帖子http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/b04f73e2-0b10-4d97-a6da-64df2e30c21d/
但是存在一些问题:1.它没有突出整行2.树在Vista上有XP风格.我希望它在Vista上的外观和原来一样,但如果用户将主题更改为XP - 它应该是XP方式.这么多XAML ......
任何想法,我应该寻找什么?
我怎样才能类型的子控件ComboBox中MyContainer Grid的WPF?
<Grid x:Name="MyContainer">
<Label Content="Name" Name="label1" />
<Label Content="State" Name="label2" />
<ComboBox Height="23" HorizontalAlignment="Left" Name="comboBox1"/>
<ComboBox Height="23" HorizontalAlignment="Left" Name="comboBox3" />
<ComboBox Height="23" HorizontalAlignment="Left" Name="comboBox4" />
</Grid>
Run Code Online (Sandbox Code Playgroud)
这行给了我一个错误:
var myCombobox = this.MyContainer.Children.GetType(ComboBox);
Run Code Online (Sandbox Code Playgroud) 我明白为什么会这样.父树型视图包括其子女的边界框的边框,所以当我将滑鼠移到一个树型视图,所有的父母在树上也鼠标滑过.我应该使用IsMouseOver以外的东西吗?
我想调整默认的 WPF TreeView/TreeViewItem 模板,以便可以突出显示整行,如图所示:

但是,我尝试了谷歌搜索中的几个模板,但没有一个可以真正产生效果,一些错误的答案甚至被标记为正确......
代码流中有一个答案似乎有效,但它添加了额外的 C# 代码,或者不需要额外的代码但工作不完美。
我不想添加额外的 C# 代码,而只想更改默认模板。有人有什么好主意吗?
非常感谢!
- - 编辑 - -
@Nick,使用您的模板后,显示如下,
首先,它没有突出显示“整个”行,“整个”是指树的最宽宽度。
其次,它突出了包括儿童在内的其他领域。
