Если вы используете шаблон разработки, такой как MVVM , я бы создал свойство в вашем классе ViewModel того типа, который содержится в ObservableCollection, для хранения выбранного в данный момент элемента для вашего источника в виде дерева.Это выглядело бы примерно так:
private object _selectedTuc;
public object SelectedTuc
{
get
{
return _selectedTuc;
}
set
{
_selectedTuc = value;
OnPropertyChanged("SelectedTuc");
}
}
Затем в своем древовидном представлении вы связываете это свойство с SelectedItem древовидного представления:
<TreeView ItemsSource="{Binding TucOC, Mode=OneWay}" SelectedItem="{Binding SelectedTuc, Mode=TwoWay}">...</TreeView>
Обратите внимание на привязку для SelectedItem, которую вы указываете Modeзначение TwoWay - это позволяет обновлять свойство SelectedTuc из пользовательского интерфейса, а также обновлять пользовательский интерфейс при каждом изменении свойства SelectedTuc.
Если вы не используете MVVM или что-то подобное, вы 'Нам понадобится создать служебный метод, который будет обновлять SelectedItem TreeView каждый раз, когда изменяется выбранный элемент или индекс в ObservableCollection.Однако я не рекомендую это делать.