wpf Treeview三级绑定
时间: 2024-01-04 14:02:27 浏览: 145
WPF TreeView绑定
4星 · 用户满意度95%
WPF TreeView 三级绑定可以使用 HierarchicalDataTemplate 来实现。以下是一个简单的示例:
假设我们有一个模型类 Category,其中包含一个名称和子类别列表:
```csharp
public class Category
{
public string Name { get; set; }
public List<Category> Subcategories { get; set; }
}
```
接下来,我们创建一个 ViewModel,其中包含一个 Category 列表:
```csharp
public class MainViewModel
{
public List<Category> Categories { get; set; }
public MainViewModel()
{
Categories = new List<Category>
{
new Category
{
Name = "Category1",
Subcategories = new List<Category>
{
new Category { Name = "Category1.1" },
new Category { Name = "Category1.2" }
}
},
new Category
{
Name = "Category2",
Subcategories = new List<Category>
{
new Category { Name = "Category2.1" },
new Category { Name = "Category2.2" }
}
}
};
}
}
```
然后我们在 XAML 中创建一个 TreeView,并使用 HierarchicalDataTemplate 来绑定 Category 列表:
```xml
<TreeView ItemsSource="{Binding Categories}">
<TreeView.ItemTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding Subcategories}">
<TextBlock Text="{Binding Name}"/>
<HierarchicalDataTemplate.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}"/>
</DataTemplate>
</HierarchicalDataTemplate.ItemTemplate>
</HierarchicalDataTemplate>
</TreeView.ItemTemplate>
</TreeView>
```
这将创建一个 TreeView,其中每个 Category 显示为一个节点,其子类别显示为该节点的子节点。
阅读全文