WPF:TreeView中的图标

时间:2009-04-14 10:20:05

标签: wpf treeview icons

请帮助WPF中的新手!

当Treeview绑定到XML数据文件时,我需要在TreeViewItems中构建一个带有图标+文本的TreeView。

这是我的XML:

<Root>
<Node Name="AAA" Image="images/1.ico" />
<Node Name="BBB" Image="images/2.ico">
    <ChildNode Name="bbb 1" Image="images/3.ico">
        <GrandchildNode Name="b 1.1" Image="images/4.ico"/>
        <GrandchildNode Name="b 1.2" Image="images/5.ico"/>
        <GrandchildNode Name="b 1.3" Image="images/6.ico"/>
    </ChildNode>
    <ChildNode Name="bbb 2" Image="images/7.ico"/>
    <ChildNode Name="bbb 3" Image="images/8.ico">
        <GrandchildNode Name="b 3.1" Image="images/9.ico"/>
        <GrandchildNode Name="b 3.2" Image="images/10.ico"/>
    </ChildNode>
    <ChildNode Name="bbb 4" Image="images/11.ico"/>
</Node>
<Node Name="CCC" Image="images/12.ico">
    <ChildNode Name="ccc 1" Image="images/13.ico">
        <GrandchildNode Name="c 1.1" Image="images/14.ico"/>
        <GrandchildNode Name="c 2.2" Image="images/15.ico"/>
    </ChildNode>
</Node></Root>

提前致谢!!!

1 个答案:

答案 0 :(得分:3)

使用TreeView.ItemTemplate为显示所需内容的项目创建模板。

<TreeView ItemsSource="{Binding Source={StaticResource myItemsSource}}">
  <TreeView.ItemTemplate>
    <HierarchicalDataTemplate>
      <StackPanel Orientation="Horizontal">
        <Image Source="{Binding Image}" Margin="0,0,5,0" />
        <TextBlock Text="{Binding Name}" />
      </StackPanel>
    </HierarchicalDataTemplate>
  </TreeView.ItemTemplate>
</TreeView>

编辑:我复制并快速修改了上面的XAML而没有多想它。刚刚意识到给出的绑定对你不起作用,因为你的数据源是XML。没有时间纠正这个问题,但这个想法应该足够明显,以便在你的路上帮助你。