Как выбрать элемент TreeView из кода
У меня есть три уровня дерева. Как выбрать любой элемент третьего уровня из кода? Я попробовал метод, упомянутый во многих блогах и в stackoverflow, но, похоже, он работает только для первого уровня (dbObject равен null для элементов ниже первого уровня).
Вот код, который я использую для выбора TreeViewItem. Я что-то пропустил?
public static void SetSelectedItem(this TreeView control, object item)
{
try
{
var dObject = control.ItemContainerGenerator.ContainerFromItem(item);
//uncomment the following line if UI updates are unnecessary
((TreeViewItem)dObject).IsSelected = true;
MethodInfo selectMethod = typeof(TreeViewItem).GetMethod("Select",
BindingFlags.NonPublic | BindingFlags.Instance);
selectMethod.Invoke(dObject, new object[] { true });
}
catch { }
}