我有一个像Band - Record这样的层次结构,在TreeView上显示。当乐队没有任何记录时,我想在层次结构中显示一条消息,如“无记录”。 我正在尝试使用TargetNullValue,但它不起作用。该带有一个ObservableCollection,如果它为null或者里面有一个空值,则它不会显示TargetNullValue。
这是我正在使用的XAML:
<TreeView ItemsSource="{Binding Bands, TargetNullValue='No bands'}" >
<TreeView.ItemContainerStyle>
<!--
This Style binds a TreeViewItem to a TreeViewItemViewModel.
-->
<Style TargetType="{x:Type TreeViewItem}">
<Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" />
</Style>
</TreeView.ItemContainerStyle>
<TreeView.Resources>
<HierarchicalDataTemplate
DataType="{x:Type ViewModels:BandViewModel}"
ItemsSource="{Binding Children, TargetNullValue='No bands'}"
>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding BandName}" />
</StackPanel>
</HierarchicalDataTemplate>
<HierarchicalDataTemplate
DataType="{x:Type ViewModels:RecordViewModel}"
ItemsSource="{Binding Children, TargetNullValue='No records'}"
>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding RecordName}" />
</StackPanel>
</HierarchicalDataTemplate>
</TreeView.Resources>
</TreeView>