У меня есть древовидное представление, и я хочу связать класс со значением IsFolder = true
Я попытался установить стиль с помощью
<Window.Resources>
<Style x:Key="HideElement" TargetType="{x:Type TextBlock}">
<Style.Triggers>
<DataTrigger Binding="{Binding Path=IsFolder}" Value="false">
<Setter Property="Visibility" Value="Hidden"/>
<Setter Property="Width" Value="0"/>
<Setter Property="Height" Value="0"/>
<Setter Property="FontSize" Value="1"/>
<Setter Property="Opacity" Value="0"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Window.Resources>
<TreeView Name="FolderTree" Grid.Column="0" SelectedItemChanged="FolderTree_SelectedItemChanged" >
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type local:Node}" ItemsSource="{Binding Nodes}">
<TextBlock Text="{Binding Name}" Style="{StaticResource HideElement}"/>
</HierarchicalDataTemplate>
</TreeView.Resources>
</TreeView>
но, к сожалению, это все равно создает элемент списка
Класс узла
public class Node
{
public Node()
{
Nodes = new ObservableCollection<Node>();
}
public bool IsFolder { get; set; }
public string Name { get; set; }
public ObservableCollection<Node> Nodes { get; set; }
}
Я хочу, чтобы отображались только результаты с IsFolder == true, и я не хочу иметь невидимые элементы для элементов с IsFolder == false