gpt4 book ai didi

silverlight - 如何将 TreeViewItem.IsExpanded 数据绑定(bind)到节点数据对象

转载 作者:行者123 更新时间:2023-12-05 00:06:26 27 4
gpt4 key购买 nike

我有一个分层数据类,比如

public class MyNode 
{
public string Name { get; set;}
public bool IsExpanded { get; set;}
public List<MyNode> Nodes { get; set;}
}

我可以定义一个 HierarchicalDataTemplate 来将 MyNode 类绑定(bind)到 TreeView。
<sdk:TreeView ItemsSource="{Binding RootNodes}">
<sdk:TreeView.ItemTemplate>
<sdk:HierarchicalDataTemplate ItemsSource="{Binding Nodes}">
<TextBlock Text="{Binding Name}" />
</sdk:HierarchicalDataTemplate>
</sdk:TreeView.ItemTemplate>
</sdk:TreeView>

问题是如何将 TreeViewItem 的 IsExpanded 属性数据绑定(bind)到相应的 MyNode.IsExpanded 属性,以便我可以保留此信息。

先感谢您,
莱克斯

最佳答案

我不确定这是否适用于 Silverlight,但在 WPF 中您可以绑定(bind)到 IsExpanded通过使用样式:

<sdk:TreeView ItemsSource="{Binding RootNodes}">
<sdk:TreeView.Resources>
<Style TargetType="TreeViewItem">
<Setter Property="IsExpanded" Value="{Binding Path=IsExpanded, Mode=TwoWay}" />
</Style>
</sdk:TreeView.Resources>
<sdk:TreeView.ItemTemplate>
<sdk:HierarchicalDataTemplate ItemsSource="{Binding Nodes}">
<TextBlock Text="{Binding Name}" />
</sdk:HierarchicalDataTemplate>
</sdk:TreeView.ItemTemplate>
</sdk:TreeView>

关于silverlight - 如何将 TreeViewItem.IsExpanded 数据绑定(bind)到节点数据对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3213905/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com