【发布时间】:2013-11-24 14:38:26
【问题描述】:
我之前没有使用过 TreeView,只是在一些教程中掌握了它们的窍门。我以为我有,结果我没有。
我正在尝试将我的 TreeView 绑定到一个对象。
对象是
public List<MyGrandparents> MyGrandParents {get;set;}
在 MyGrandParent 类中,有一个属性
public List<MyParents> MyParents{get;set;}
最后,在 MyParent 类中有一个属性
public List<MyChildren> MyChildren {get;set;}
在每个类中,还有其他属性,例如名称(虽然没有基类,所以在这个阶段没有共享代码)
我想将地段绑定到树视图,所以在“根”级别我只能看到祖父母。我可以将祖父母扩展到只能看到父母,我也可以将其扩展到看到孩子。
我遇到的问题只是最高级别是绑定(祖父母级别)。我的 XAML 是
<TreeView ItemsSource="{Binding MyGrandParents}">
<TreeView.Resources>
<DataTemplate DataType="{x:Type local:MyGrandParent}">
<TextBlock Text="{Binding Name}" Margin="0,0,10,0" />
</DataTemplate>
<HierarchicalDataTemplate DataType="{x:Type local:MyParent}" ItemsSource="{Binding MyGrandParents}">
<TextBlock Text="Don't bind to test"></TextBlock>
</HierarchicalDataTemplate>
</TreeView.Resources>
</TreeView>
我不明白为什么这不能给我一棵漂亮的树。
【问题讨论】: