有没有办法在 WPF 中自动伸展树(Splay Tree) View 中的所有节点?我搜索了一下,甚至没有在treeview属性中找到展开功能。
谢谢
最佳答案
您可以设置 ItemContainerStyle 并使用 IsExpanded 属性。
<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Grid>
<TreeView>
<TreeView.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}">
<Setter Property="IsExpanded" Value="True"/>
</Style>
</TreeView.ItemContainerStyle>
<TreeViewItem Header="Header 1">
<TreeViewItem Header="Sub Item 1"/>
</TreeViewItem>
<TreeViewItem Header="Header 2">
<TreeViewItem Header="Sub Item 2"/>
</TreeViewItem>
</TreeView>
</Grid>
</Page>
如果您需要从代码中执行此操作,您可以为 TreeView 项编写 View 模型,并将 IsExpanded 属性绑定(bind)到模型中相应的属性。有关更多示例,请参阅 Josh Smith 在 CodeProject 上发表的精彩文章:Simplifying the WPF TreeView by Using the ViewModel Pattern
关于wpf - WPF 中的自动伸展树(Splay Tree) View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1487144/