【发布时间】:2011-11-25 07:42:46
【问题描述】:
我需要将图像添加到 WPF 树视图节点,我已经查看了这个示例 How do I add icons next to the nodes in a WPF TreeView?,它工作正常,除了所有节点都具有相同的图像。我想要树视图中没有的所有节点任何孩子要么没有形象,要么有不同的形象。
这是我设置图像的 XAML:
<HierarchicalDataTemplate x:Key="NodeTemplate">
<StackPanel Orientation="Horizontal" Margin="2">
<Image Source="test.png" Width="16" Height="16" SnapsToDevicePixels="True"/>
<TextBlock x:Name="tb"/>
</StackPanel>
<HierarchicalDataTemplate.ItemsSource>
<Binding>
<Binding.XPath>child::node()</Binding.XPath>
</Binding>
</HierarchicalDataTemplate.ItemsSource>
<HierarchicalDataTemplate.Triggers>
<DataTrigger Binding="{Binding Path=NodeType}" Value="Text">
<Setter TargetName="tb" Property="Text" Value="{Binding Path=Value}"></Setter>
</DataTrigger>
<DataTrigger Binding="{Binding Path=NodeType}" Value="Element">
<Setter TargetName="tb" Property="Text" Value="{Binding Path=Name}"></Setter>
</DataTrigger>
</HierarchicalDataTemplate.Triggers>
</HierarchicalDataTemplate>
下面是输出的屏幕截图
有人可以建议我如何实现这一点,可能的解决方案可以是更改 XAML 或通过 C# 以编程方式。
【问题讨论】: