wpf 使用template写一个简单的treeview
时间: 2023-07-20 20:22:10 浏览: 90
最漂亮的treeview(wpf)
4星 · 用户满意度95%
好的,下面是一个简单的 WPF TreeView,使用了 HierarchicalDataTemplate:
```xml
<Window x:Class="TreeViewSample.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="TreeView Sample" Height="350" Width="250">
<Grid>
<TreeView ItemsSource="{Binding}">
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type local:Node}" ItemsSource="{Binding Children}">
<TextBlock Text="{Binding Name}"/>
</HierarchicalDataTemplate>
</TreeView.Resources>
</TreeView>
</Grid>
</Window>
```
其中,Node 是一个自定义的类,用于表示树节点:
```csharp
public class Node
{
public string Name { get; set; }
public List<Node> Children { get; set; }
}
```
在代码中,可以通过设置 TreeView 的 ItemsSource 属性为一个 Node 对象的集合来展示树形结构:
```csharp
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
var nodes = new List<Node>
{
new Node { Name = "Node 1", Children = new List<Node> { new Node { Name = "Node 1.1" }, new Node { Name = "Node 1.2" } } },
new Node { Name = "Node 2", Children = new List<Node> { new Node { Name = "Node 2.1" }, new Node { Name = "Node 2.2" } } },
new Node { Name = "Node 3" }
};
DataContext = nodes;
}
}
```
这样就可以展示一个简单的树形结构了。
阅读全文