树视图仅使用N级

时间:2012-12-21 14:16:46

标签: wpf c#-4.0 hierarchicaldatatemplate

我有这个树结构,我希望在2个树视图中显示。两个树视图都将使用相同的集合。

  • 东部会议
    • 大西洋
      • 纽约
        • 甜瓜
      • 布鲁克林
        • 德隆
      • 波士顿
        • 回旋曲
    • 中部
      • 芝加哥
      • 印第安纳
    • 西南
      • 迈阿密
      • 亚特兰大

现在,对于第一个树视图,我只想显示会议和分区,以及第二个树视图,会议,分区和城市,而不是明星球员。

现在,我已经使用下面的xaml实现了第一个树视图的预期结果:

<HierarchicalDataTemplate DataType="{x:Type local:Conference}"
                                  ItemsSource="{Binding Path=Division}">
            <StackPanel Orientation="Horizontal">
                <TextBlock Margin="3"
                           Text="{Binding Path=Name}" />
            </StackPanel>
  </HierarchicalDataTemplate>

现在我不知道如何忽视明星球员,只是在第二个树视图中显示会议,分区和城市。

希望你能帮助我。谢谢!

1 个答案:

答案 0 :(得分:0)

这应该适合你:

<TreeView ItemsSource="{Binding Conferences}">
    <TreeView.ItemTemplate>
        <HierarchicalDataTemplate ItemsSource="{Binding Divisions}">
            <TextBlock Text="{Binding Name}" />
            <HierarchicalDataTemplate.ItemTemplate>
                <DataTemplate>
                    <TextBlock Text="{Binding Name}" />
                </DataTemplate>
            </HierarchicalDataTemplate.ItemTemplate>
        </HierarchicalDataTemplate>
    </TreeView.ItemTemplate>
</TreeView>

请记住为树视图所在的窗口/用户控件设置datacontext。