2011-12-07 59 views
0

我使用的是從實體框架創建一個類(在數據庫分類表)如何使用樹視圖創建分層數據模板?

而且只包含三個字段:

  • 類別ID
  • 類別名稱
  • ParentCategory

而且實體框架爲我創建了兩個導航:子類別和父類

當我在樹形視圖中加載集合時,它向我展示了一切,它應該只顯示頂層。

我想我應該創建一個分層的數據模板,但我真的不知道如何創建它。

編輯:同類者這些情況:Entity Framework - Binding WPF Tree view control

我的控制XAML包含:

<TreeView x:Name="objectiveTree" ItemsSource="{Binding Objectives}"> 
    <TreeView.ItemTemplate> 
     <HierarchicalDataTemplate ItemsSource="{Binding Subcategories}"> 
      <TextBlock Text="{Binding Path=CategoryName}" 
     </HierarchicalDataTemplate> 
    </TreeView.ItemTemplate> 
</TreeView> 
+0

我不小心整個標題 –

+0

對不起H.B.我沒有得到你 – Darf

+0

它是[一個meme](http://knowyourmeme.com/memes/i-accidentally),但沒關係。 –

回答

0

你可以嘗試這樣的事情:

代碼隱藏:

objectiveTree.ItemsSource = (List<YourMainEntity>) _entities; 

XAML:

<TreeView x:Name="objectiveTree"> 
     <TreeView.ItemTemplate> 
      <HierarchicalDataTemplate ItemsSource="{Binding Subcategories}"> 
       <TextBlock Text="{Binding ParentCategory}" /> 
       <HierarchicalDataTemplate.ItemTemplate> 
        <DataTemplate> 
         <TextBlock Text="{Binding CategoryName}"/> 
        </DataTemplate> 
       </HierarchicalDataTemplate.ItemTemplate>       
      </HierarchicalDataTemplate> 
     </TreeView.ItemTemplate> 
</TreeView> 
0
<TreeView ItemsSource="{Binding YourItems}" ItemContainerStyle=" 
    {StaticResource Level1}"> 
    <TreeView.ItemTemplate> 
    <HierarchicalDataTemplate ItemsSource="{Binding Children}" 
    ItemContainerStyle="{StaticResource Level3}"> 
    <TextBlock Text="{Binding Name}" />   
    </HierarchicalDataTemplate> 
    </TreeView.ItemTemplate> 

    </TreeView> 

相關問題