ListView に問題があります。アイテムがない場合は、たとえば「アイテムなし」のようなものを表示する必要があります。それはできますが、そうするとListViewが消えます。このテキストがリストビュー内に表示され、リストビューのヘッダーが同じままである必要があります。
空のリストの私の listView スタイルは次のとおりです。
<Style TargetType="{x:Type ListView}" >
<Setter Property="BorderThickness" Value="2,2,0,0"/>
<Setter Property="BorderBrush" Value="#FFFFFF"/>
<Style.Triggers>
<DataTrigger Binding="{Binding Path=Items.Count,
RelativeSource={RelativeSource Self}}" Value="0">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<Border BorderThickness="1" BorderBrush="#FFFFFF"
Background="#FFFFFF">
<TextBlock> No items</TextBlock>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</DataTrigger>
</Style.Triggers>
</Style>