我是WPF和EF的新手。我看了一下,但是找不到合适的帮助。



这就是我所拥有的:

实体框架(ReportDefinition.ParentID和ReportDefinition.SectionID是Section.idSections),ReportDefinition示例和Section示例。

这是我想介绍的内容:

树视图。





我正在尝试以编程方式实现这一目标。我将不胜感激。

最佳答案

您需要顶级ReportDefinition对象的集合:

TopLevelReportDefinitions = ReportDefinitions.Where(rd => rd.ParentID == 0)


您需要将此集合绑定到ItemsSourceTreeView

在EF中,还需要在ReportDefinition上创建父子关系,以使用ParentID将子项链接到父项。为方便起见,您可以将反向集合命名为Children。然后,直接在另一个ReportDefinition下面的ReportDefinition对象的集合是该集合:

ReportDefinition.Children


然后,您必须在HierarchicalTemplate中创建TreeView

<TreeView ItemsSource="{Binding TopLevelReportDefinitions}">
  <TreeView.ItemTemplate>
    <HierarchicalDataTemplate ItemsSource="{Binding Children}">
      <TextBlock Text="{Binding Name}"/>
    </HierarchicalDataTemplate>
  </TreeView.ItemTemplate>
</TreeView>

关于c# - TreeView和 Entity Framework 绑定(bind),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9481799/

10-13 06:26