Чаще всего вы связываете ObservableCollection с ItemSource TreeView.Класс, к которому вы привязываете, должен включать, по крайней мере, две вещи: Children (который является ObservableCollection того же класса, чтобы сформировать иерархию, и ListItems, который содержит элементы, которые вы хотите отобразить под каждым узлом.следующий HierarchicalDataTemplate в Window.Resources (или UserControl.Resources, в зависимости от того, где вы работаете):
<HierarchicalDataTemplate x:Key="TreeTemplate" ItemsSource="{Binding Path=Children}"
IsExpanded>
<ListView ItemsSource="{Binding Path=ListItems}"/> // or ListBox, which is probably more fitting
</HierarchicalDataTemplate>
И TreeView:
<TreeView ItemsSource="{Binding Path=Your_Node_List_Here}" ItemTemplate="{StaticResource TreeTemplate}"/>