我在停靠面板中有一个树视图,树视图的所有元素都在 HierarchicalDataTemplates 中。这是代码:
<DockPanel Margin="10,10,0,0" VerticalAlignment="Stretch" Grid.Row="0" Grid.RowSpan="5" Grid.Column="0">
<DockPanel.Resources>
<src:TreeViewFilter x:Key="MyList" />
<HierarchicalDataTemplate DataType="{x:Type src:TreeViewParent}" ItemsSource="{Binding Path=OrderAttributes}">
<TextBlock Text="{Binding Path=Name}" FontSize="24"/>
</HierarchicalDataTemplate>
<HierarchicalDataTemplate DataType="{x:Type src:OrderAttribute}" ItemsSource="{Binding Path=OrderAttributes}">
<TextBlock Text="{Binding Path=NameAndCount}" FontSize="16"/>
</HierarchicalDataTemplate>
</DockPanel.Resources>
<TreeView Name="treeView1" BorderThickness="2" ItemsSource="{Binding Source={StaticResource MyList}, UpdateSourceTrigger=PropertyChanged}" TreeViewItem.Selected="treeViewFilter"/>
</DockPanel>
如您所见,DockPanel 环绕在 TreeView 周围。我要添加的图标将位于第二个 HierarchicalDataTemplate 中,它绑定到字符串并显示为文本框。根据“NameAndCount”的名称,我会选择一个图标显示在左侧。
关于我的示例的解决方案有什么想法吗?或者我是否需要考虑使用不同的模板,如 StackPanel?