Я хочу создать древовидную структуру с неограниченными узлами. У меня есть 2 ViewModel для дерева:TreeView с неограниченными узлами
public class GroupViewModel
{
public GroupViewModel()
{
}
public string GroupName { get; set; }
public ObservableCollection<TagViewModel> Tags { get; set; }
public ObservableCollection<GroupViewModel> Groups { get; set; }
}
и
public class TagViewModel
{
public TagViewModel()
{
}
public string TagName { get; set; }
}
Мой XAML:
<HierarchicalDataTemplate DataType="{x:Type ViewModel:GroupViewModel}" ItemsSource="{Binding Path=Tags}">
<TextBlock Text="{Binding Path=GroupName}" />
</HierarchicalDataTemplate>
<HierarchicalDataTemplate DataType="{x:Type ViewModel:TagViewModel}">
<StackPanel HorizontalAlignment="Left" Orientation="Horizontal">
<CheckBox />
<TextBlock Text="{Binding Path=TagName}" Margin="5,0,0,0" />
</StackPanel>
</HierarchicalDataTemplate>
TreeView Name="groupsTreeView"></TreeView>
С
ItemsSource = "{Binding Path = Метки}"
я есть первый уровне группы с тегами
и с
ItemsSource = "{Binding Path = Группы}"
я есть группы с подгруппами - без тегов.
Как я могу создать дерево с группами и тегами?