你如何在WPF C#中获得treeviewitem的级别?

你如何在WPF C#中获得treeviewitem的级别? 在Windows窗体中,有一个树视图类的.Level成员,但似乎没有一个用于WPF C#。

构建视图模型。

View模型使您在树视图方面具有比没有树视图时更大的灵活性。 帮自己一个忙,不要走视觉树,如果父节点不可见,它可以被虚拟化,你的水平(或深度)数字将是错误的。 构建一个包装数据的视图模型,并知道它处于什么级别。

看看这里发布的答案。

回答第一个链接 (你会在视图模型中添加另一个属性 – 级别)

treeview视图模型演示

我是用转换器做的,因为我想用

来做

    

和转换器

 public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { if ((value as TreeView) != null)//level 1 return 0; var item = (value as TreeViewItem); if (item != null) // level 2 and 3 return (item.Parent as TreeViewItem)!=null ? 2 : 1; return 0; } 

这对于树视图中的多级样式特别有用