Ответ 1
ItemContainerStyle
метод не работает для меня, говорят на Windows-8. Есть 4 кисти, которые в целом соответствуют этому и используются шаблоном по умолчанию для TreeViewItem
клавиши:
HighlightBrushKey
- Фоновый фокус.
HighlightTextBrushKey
- Передний план с фокусом.
InactiveSelectionHighlightBrushKey
- Фон без фокуса.
InactiveSelectionHighlightTextBrushKey
- Передний план без фокуса.
Просто переопределите их, как вы считаете нужным, для вашего требования что-то вроде этого будет хорошо:
<TreeView>
<TreeView.Resources>
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}"
Color="Transparent" />
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightTextBrushKey}"
Color="Black" />
<SolidColorBrush x:Key="{x:Static SystemColors.InactiveSelectionHighlightBrushKey}"
Color="Transparent" />
<SolidColorBrush x:Key="{x:Static SystemColors.InactiveSelectionHighlightTextBrushKey}"
Color="Black" />
</TreeView.Resources>
</TreeView>
Обращайте внимание только на их переопределение в пределах требуемой области. Например, если вы поместите все это в App.xaml, вы увидите некоторые странные побочные эффекты, поскольку все элементы управления, использующие эти кисти, теперь будут использовать ваши переопределенные, которые могут быть не такими, какие вы после.