0

エンティティフレームワーク(データベースのカテゴリテーブル)から作成されたクラスを使用しています

そして、3つのフィールドのみが含まれています。

  • カテゴリID
  • 種別名
  • 親カテゴリ

そして、エンティティフレームワークは私に2つのナビゲーションを作成しました:サブカテゴリと親

また、コレクションをツリービューにロードすると、すべてが表示され、トップレベルのみが表示されます。

階層データテンプレートを作成する必要があると思いますが、実際に作成することについてはわかりません。

編集:これはこれらの場合に似ています:エンティティフレームワーク-WPFツリービューコントロールのバインド

私のコントロールXAMLには次のものが含まれています。

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

2 に答える 2

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>
于 2011-12-07T11:54:57.103 に答える
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>

于 2017-06-30T07:10:18.437 に答える