Ich benutze ein ListView
mit einem GridView
Ansicht, um die Ergebnisse einer Suche anzuzeigen. Ich möchte in der Mitte des Bildschirms eine informative Nachricht (etwas wie "Keine Elemente gefunden") anzeigen ListView
in dem Fall, wenn keine Elemente angezeigt werden. Wie kann ich das machen?
Antworten:
1 für die Antwort № 1Sie können die ListView-Vorlage mit dem Auslöser im Stil ändern, wenn ListView keine Elemente enthält, wie folgt:
<ListView Name="List"
DockPanel.Dock="Top"
ItemsSource="{Binding Items}">
<ListView.View>
<GridView>
<GridView.Columns>
<GridViewColumn Width="70" Header="Serial" DisplayMemberBinding="{Binding Path=Serial}" />
</GridView.Columns>
</GridView>
</ListView.View>
<ListView.Style>
<Style TargetType="ListView">
<Style.Triggers>
<Trigger Property="HasItems"
Value="False">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListView">
<StackPanel>
<ListView>
<ListView.View>
<GridView>
<GridView.Columns>
<GridViewColumn Width="70" Header="Serial" DisplayMemberBinding="{Binding Path=Serial}" />
</GridView.Columns>
</GridView>
</ListView.View>
</ListView>
<TextBlock Text="No items..."/>
</StackPanel>
</ControlTemplate>
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>
</Style>
</ListView.Style>
</ListView>