我有一个类MyClass
,它继承自UserControl
:
public class MyClass : UserControl
{
public string NodeName { get; set; }
public ObservableCollection<MyClass> Children { get; set; }
//...
}
我有 HierarchicalDataTemplate :
<HierarchicalDataTemplate DataType="{x:Type sp:MyClass}"
ItemsSource="{Binding Path=Children}">
<TextBlock Text="{Binding Path=NodeName}" />
</HierarchicalDataTemplate>
在这种情况下,TreeView
仅显示像控件一样的顶级 MyClass,但不像绑定到 NodeName 及其子级的 TextBlock。这是为什么?
如果我不继承MyClass
一切UserControl
都很好。
public class MyClass
{
public string NodeName { get; set; }
public ObservableCollection<MyClass> Children { get; set; }
}
那么在第一种情况下我该如何修复它呢?