在我的代码背后,我有一个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; }
}
如上所示,我只获得了部分成功。到目前为止我取得的进步
<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>
我究竟做错了什么?