Похоже, вы должны настроить ItemsContainerStyle , а не ControlTemplate. Например, если вы хотите пометить TreeViewItem как выбранный, когда выбран базовый ViewModel, вы можете использовать следующий стиль:
<TreeView ItemsSource="{Binding ...}
...>
<TreeView.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}">
<!-- IsSelected is a property on ViewModel item -->
<Setter Property="IsSelected" Value="{Binding IsSelected}"/>
<Setter .../>
</Style>
</TreeView.ItemContainerStyle>
</TreeView>
Если Binding вам не подходит, вы можете использовать Преобразователи , Триггеры в Style или ControlTemplate. Кроме того, вы также можете использовать триггеры в шаблонах данных.
PS: написал код с головы. Может быть опечатка.