我是 WPF 的新手,所以可能会遗漏一些明显的东西,但无法在任何地方找到答案。
基本上我正在构建一个以特定方式排序的自定义树集合,并且树的节点被键入到集合的类型。当节点是通用的时,在测试中TreeView
不起作用HierarchicalDataTemplate
。如果它们不是通用的,那很好。
这是一个简单的节点类来说明:
public class SimpleNode<T>
{
private List<SimpleNode<T>> _children;
private string _name;
public SimpleNode(string name)
{
_name = name;
}
public List<SimpleNode<T>> Children
{
get
{
return _children;
}
set
{
_children = value;
}
}
public string Name
{
get
{
return _name;
}
}
}
然后在 xaml 中:
HierarchicalDataTemplate DataType="{x:Type local:SimpleNode`1}" ItemsSource="{Binding Children}"
显然,附加到类型的 `1 是SimpleNode
具有 1 个通用参数的结果。如果我剥离泛型类的HierarchicalDataTemplate
作品,我可以在TreeView
. 有了泛型,它就不会这样做。
有任何想法吗?
提前致谢。