在 WPF TreeView 中显示类层次结构,可以通过以下几个步骤实现:
首先,需要创建一个类层次结构,例如:
public class MyClass
{
public string Name { get; set; }
public List<MyClass> Children { get; set; }
public MyClass(string name, List<MyClass> children = null)
{
Name = name;
Children = children ?? new List<MyClass>();
}
}
在 TreeView 中显示类层次结构,需要创建一个 ItemTemplate,用于定义 TreeViewItem 的样式和数据绑定。例如:
<TreeView ItemsSource="{Binding ClassHierarchy}">
<TreeView.ItemTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding Children}">
<TextBlock Text="{Binding Name}" />
</HierarchicalDataTemplate>
</TreeView.ItemTemplate>
</TreeView>
在 ViewModel 中创建一个类层次结构的数据源,例如:
public class MainViewModel : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
private List<MyClass> _classHierarchy;
public List<MyClass> ClassHierarchy
{
get => _classHierarchy;
set
{
_classHierarchy = value;
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(ClassHierarchy)));
}
}
public MainViewModel()
{
// 创建一个类层次结构的数据源
ClassHierarchy = new List<MyClass>
{
new MyClass("Class A", new List<MyClass>
{
new MyClass("Class A1"),
new MyClass("Class A2")
}),
new MyClass("Class B", new List<MyClass>
{
new MyClass("Class B1"),
new MyClass("Class B2")
})
};
}
}
在 MainWindow 的构造函数中,设置 TreeView 的 DataContext 为 MainViewModel 的实例,例如:
public MainWindow()
{
InitializeComponent();
DataContext = new MainViewModel();
}
这样,就可以在 WPF TreeView 中显示类层次结构了。
推荐的腾讯云相关产品:
腾讯云相关产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云