Прямо сейчас необходимо дважды щелкнуть или нажать + значок. Там какой-либо путь состоит в том, чтобы сделать его поэтому, если пользователь нажимает где-нибудь на узел, это расширяется?
Возможно, это не самое элегантное решение, но оно работает:
static DependencyObject VisualUpwardSearch<T>(DependencyObject source)
{
while (source != null && source.GetType() != typeof(T))
source = VisualTreeHelper.GetParent(source);
return source;
}
тогда в обработчике TreeViewItem.Selected:
private void Treeview_Selected(object sender, RoutedEventArgs e)
{
var treeViewItem = VisualUpwardSearch<TreeViewItem>(e.OriginalSource as DependencyObject) as TreeViewItem;
if (treeViewItem != null) treeViewItem.IsExpanded = true;
}
магия VisualUpwardSearch берется отсюда: Выберите узел TreeView на щелкните правой кнопкой мыши перед отображением ContextMenu
С уважением