WPF树视图复杂的层次结构

时间:2014-11-11 11:07:00

标签: c# wpf mvvm treeview datatemplate

在我的代码背后,我有一个Observable Collection of ObservableCollection。 我正在尝试创建一个数据模板,以便在树视图中查看与模型中定义的数据完全相同的数据。

public class MainItem
{
    public string MainItemName { get; set; }
    public List<CategoryDetail> GoodCategories { get; set; }
    public List<CategoryDetail> BadCategories { get; set; }
    public List<SubItem> AllSubItems{ get; set; }
}

public class CategoryDetail
{
    public string CatId { get; set; }
    public string  CatName { get; set; }
    public List<SubItem> CatSubItems { get; set; }
    public List<CategoryDetail> CatSubCategories { get; set; }
}

public class SubItem
{
    public int SubItemId { get; set; }
    public string SubItemName { get; set; }
}

enter image description here

如上所示,我只获得了部分成功。到目前为止我取得的进步

<TreeView  Grid.Row="0" ItemsSource="{Binding}">
        <TreeView.ItemTemplate>

            <HierarchicalDataTemplate ItemsSource="{Binding CatSubCategories}">

                <TextBlock Foreground="Red" Text="{Binding MainItemName}" />
                <HierarchicalDataTemplate.ItemTemplate>
                    <HierarchicalDataTemplate ItemsSource="{Binding CatSubItems}" ItemTemplate="{StaticResource IdAndNameInAGridTemplate}">
                        <TextBlock Text="{Binding CatName}" />
                    </HierarchicalDataTemplate>
                </HierarchicalDataTemplate.ItemTemplate>
            </HierarchicalDataTemplate>
        </TreeView.ItemTemplate>
</TreeView>

我究竟做错了什么?

0 个答案:

没有答案