WPF TreeView HierarchicalDataTemplate-绑定到具有多个子集合的对象

WPF TreeView HierarchicalDataTemplate-绑定到具有多个子集合的对象,第1张

WPF TreeView HierarchicalDataTemplate-绑定到具有多个子集合的对象

A

HierarchicalDataTemplate
是一种表达方式,“这就是您呈现这种类型的对象的方式,这是可以探查以找到该对象下的子节点属性

因此,您需要一个返回该节点“子级”的属性。例如(如果您不能同时使“组”和“条目”都源自同一个节点类型)

public class Group{ ....        public IList<object> Items        { get {     IList<object> childNodes = new List<object>();     foreach (var group in this.SubGroups)         childNodes.Add(group);     foreach (var entry in this.Entries)         childNodes.Add(entry);     return childNodes; }        }

接下来

HierarchicalDataTemplate
,由于条目没有子项,因此不需要条目。因此,需要更改XAML以使用新的Items属性和
DataTemplate
for条目:

<TreeView Name="GroupView" Grid.Row="0" Grid.Column="0" ItemsSource="{Binding}">    <TreeView.Resources>        <HierarchicalDataTemplate DataType="{x:Type local:Group}" ItemsSource="{Binding Items}"> <TextBlock Text="{Binding Path=Name}" />        </HierarchicalDataTemplate>        <DataTemplate DataType="{x:Type local:Entry}" > <TextBlock Text="{Binding Path=Name}" />        </DataTemplate>    </TreeView.Resources></TreeView>

这就是它的样子。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5559769.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-14
下一篇 2022-12-14

发表评论

登录后才能评论

评论列表(0条)

保存