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即可工作。
很好的答案,我喜歡解釋!謝謝! –
不客氣的大衛。 :) –