1
作为我的first TreeView question on SO的后续,我无法将TreeView控件绑定到我的委员会对象和其Products集合的Id属性在同一个TreeView控件中。 这里是我的简化模型:WPF TreeView数据绑定跟进
internal class Contract
{
public string Name { get; set; }
public ObservableCollection<Commission> Commissions { get; set; }
}
internal class Commission
{
public string Id { get; set; }
public ObservableCollection<Product> Products { get; set; }
}
internal class Product
{
public string Code { get; set; }
}
这里是我的问题XAML。合同返回一组委员会对象(佣金)。我已经注销了返回产品的HierarchicalDataTemplate。无论是HierarchicalDataTemplate将独立工作,但如果两者都没有注释:
<TreeView ItemsSource="{Binding Contract.Commissions}">
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type m:Commission}">
<TextBlock Text="{Binding Id}" />
</HierarchicalDataTemplate>
<!--<HierarchicalDataTemplate DataType="{x:Type m:Commission}" ItemsSource="{Binding Products}">
<TextBlock Text="{Binding Code}" />
</HierarchicalDataTemplate>-->
</TreeView.Resources>
</TreeView>
如果两个HierarchicalDataTemplates都注释掉,因为我使用的是独特的(佣金类型)两次抛出一个错误,但我不知道如何使HierarchicalDataTemplate无需使用Commission Type作为模板的DataType即可工作。
很好的答案,我喜欢解释!谢谢! –
不客气的大卫。 :) –