Я довольно свеж для WPF, и это самое близкое, что я пришел к достижению того, что я решил сделать после обзора многих ранее заданных вопросов, размещенных здесь. код XAML:Использование TreeView HierarchicalDataTemplate.Triggers для изменения значка папки
<TreeView x:Name="folderView" Grid.Column="0" Grid.Row="1" BorderThickness="0">
<TreeViewItem Header="Folders" ItemsSource="{Binding SubFolders, Source={StaticResource RootFolderDataProvider}}" Margin="5"/>
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type my:FolderView}" ItemsSource="{Binding SubFolders}">
<StackPanel Orientation="Horizontal" Name="myPanel">
<Image x:Name="img" Width="16" Height="16" Source="Images/FolderClosed.png" />
<TextBlock Text="{Binding Name}" />
</StackPanel>
<HierarchicalDataTemplate.Triggers>
<DataTrigger Binding="{Binding IsExpanded}" Value="True">
<Setter TargetName="img" Property="Source" Value="Images/FolderOpen.png"/>
</DataTrigger>
</HierarchicalDataTemplate.Triggers>
</HierarchicalDataTemplate>
</TreeView.Resources>
</TreeView>
Это показывает изображение FolderClosed на все мои вложенных папках, кроме самого верхней корневой папки. Триггер HierachicalDataTemplate
также не срабатывает при расширении. Любая помощь будет оценена по достоинству.
Вы находятся на месте, что решило мою проблему, когда папки меняли изображения значков. Если бы я мог получить верхний узел, чтобы отобразить изображение, которое было бы здорово. –