我只想在wpf中使用绑定创建一个树视图。我有一个类(ClassRoot)作为root,我在类Map.Entry
,ClassA
,ClassB
的根类中有3个属性,如下所示,
ClassC
每个类都有自己的属性。它可能具有class ClassRoot
{
public ClassA propClassA { get; set; }
public ClassB propClassB { get; set; }
public ClassC propClassC { get; set; }
}
或List
等类型的属性,如下所示,
Enum
与上述类一样,class ClassA
{
public string Name { get; set; }
//Here ListOfValues is an enum
public ListOfValues listValues { get; set; }
public List<string> stringValues { get; set; }
}
和ClassB
也具有相同的结构。我想在WPF树视图中显示如下,
每个属性都应该是可编辑的,类型ClassC
或List
的属性应该在树视图中表示为Enum
。
我可以使用分层数据模板,但我很难实现这个多级层次结构。
我该如何处理?
谢谢,
答案 0 :(得分:1)
<HierarchicalDataTemplate DataType = "{x:Type src:ClassRoot}"
ItemsSource = "{Binding Path=Divisions}">
<TextBlock Text="{Binding Path=Name}"/>
</HierarchicalDataTemplate>
<HierarchicalDataTemplate DataType = "{x:Type src:ClassA}"
ItemsSource = "{Binding Path=Teams}">
<TextBlock Text="{Binding Path=Name}"/>
</HierarchicalDataTemplate>
<HierarchicalDataTemplate DataType = "{x:Type src:ClassB}"
ItemsSource = "{Binding Path=Teams}">
<TextBlock Text="{Binding Path=Name}"/>
</HierarchicalDataTemplate>