6
我有一個ListView
與ObservableCollection
綁定。此外,我列出了ObservableCollection
中的所有項目。現在,是否有一個好方法來檢查ObservableCollection
是否爲空,並且顯示一個替代xaml?檢查一個ObservableCollection是否可以顯示另一個xaml!
我有一個ListView
與ObservableCollection
綁定。此外,我列出了ObservableCollection
中的所有項目。現在,是否有一個好方法來檢查ObservableCollection
是否爲空,並且顯示一個替代xaml?檢查一個ObservableCollection是否可以顯示另一個xaml!
您可以使用ListView的HasItems依賴項屬性。使用觸發器時,如果屬性爲false,則可以更改ControlTemplate。這裏舉例:
<ListView ItemsSource="{Binding Items}">
<ListView.Style>
<Style TargetType="{x:Type ListView}">
<Style.Triggers>
<Trigger Property="HasItems" Value="False">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ListView}">
<Border SnapsToDevicePixels="true"
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}">
<TextBlock Text="No items"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>
</Style>
</ListView.Style>
</ListView>