要从HierarchicalDataTemplate项中获取TreeViewItem,可以使用以下方法:
<TreeView x:Name="myTreeView">
<TreeView.ItemTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding Children}">
<TextBlock Text="{Binding Name}"/>
</HierarchicalDataTemplate>
</TreeView.ItemTemplate>
</TreeView>
public class TreeViewItemModel
{
public string Name { get; set; }
public ObservableCollection<TreeViewItemModel> Children { get; set; }
}
private TreeViewItemModel CreateItem(string name, int level)
{
TreeViewItemModel item = new TreeViewItemModel
{
Name = name,
Children = new ObservableCollection<TreeViewItemModel>()
};
// 添加子项
for (int i = 0; i< level; i++)
{
item.Children.Add(CreateItem("Child " + i, level - 1));
}
return item;
}
ObservableCollection<TreeViewItemModel> items = new ObservableCollection<TreeViewItemModel>();
for (int i = 0; i < 5; i++)
{
items.Add(CreateItem("Item " + i, 2));
}
myTreeView.ItemsSource = items;
这样,您就可以从HierarchicalDataTemplate项中获取TreeViewItem。
领取专属 10元无门槛券
手把手带您无忧上云