/ / Text in ListView anstelle von collection anzeigen - wpf, listview

Zeige Text in ListView anstelle von collection - wpf, listview

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 № 1

Sie 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>