Вы можете создать HierarchicalDataTemplate
, который должен быть размещен в ресурсах вашего TreeView или на более высоком уровне. Обязательно установите DataType
для своего класса, чтобы он применялся.
Примерно так, например:
<HierarchicalDataTemplate DataType="{x:Type data:Field}"
ItemsSource="{Binding SubFields}">
<ContentControl MouseDoubleClick="TreeViewItem_MouseDoubleClick">
<TextBlock Text="{Binding Name}"/>
</ContentControl>
</HierarchicalDataTemplate>
private void TreeViewItem_MouseDoubleClick(object sender, MouseButtonEventArgs e)
{
Field field = (sender as FrameworkElement).DataContext as Field;
MessageBox.Show(field.Value.ToString());
}
Вам также необходим список корневых элементов, к которому вы можете привязать ItemsSource
самого TreeView.