Cześć,

mam następujący problem: próbuję wyświetlić za pomocą wpf TreeViewa wyświetlić wielopoziomową strukturę kategorii produktów które posiadam w bazie danych. Kategorie przechowuję w tabeli z kolumnami PC_ID, PC_PC_ID oraz PC_NAME. PC_ID to klucz główny tej tabeli, natomiast PC_PC_ID wskazuje na "rodzica" kategorii. Głębokość jest nieograniczona. Dane pobieram za pomocą LINQ.

Po sporych zmaganiach udało mi się utworzyć następujący kod w xamlu:

<TreeView ItemsSource="{Binding Path=ProductCategoriesToShow}" Height="315" HorizontalAlignment="Left" Margin="6,40,0,0" Name="treeViewChooseProductCategory" VerticalAlignment="Top" Width="120">
                        <TreeView.ItemTemplate>
                            <HierarchicalDataTemplate ItemsSource="{Binding Path=PC_ProductCategories}">
                                <TextBlock Text="{Binding Path=PC_NAME}" />
                            </HierarchicalDataTemplate>
                        </TreeView.ItemTemplate>
                    </TreeView> 

O ile TreeView poprawnie rozpoznaje wszystkie głębokości, to niestety na "zerowej" wyświetla wszystkie możliwe kategorii.

Jak powinno to być zrobione?