Это известная проблема, решение заключается в создании наследника TreeView.
public class MyTreeView : TreeView
{
protected override DependencyObject GetContainerForItemOverride()
{
return new MyTreeViewItem();
}
protected override bool IsItemItsOwnContainerOverride(object item)
{
return (item is MyTreeViewItem);
}
}
public class MyTreeViewItem : TreeViewItem
{
protected override void OnGotFocus(RoutedEventArgs e)
{
this.IsSelected = true;
this.RaiseEvent(e);
}
protected override DependencyObject GetContainerForItemOverride()
{
return new MyTreeViewItem();
}
protected override bool IsItemItsOwnContainerOverride(object item)
{
return (item is MyTreeViewItem);
}
}
(
вопрос на англ форуме по этой проблеме )
Потом xaml коде для проекта, который Вы привели в кач-ве примера: исправить <TreeView на <local:MyTreeView
Для связи
[mail]