Windowsエクスプローラー(大きなアイコン)のようにListViewにアイテムを表示したいだけです。同じために、以下のコードを使用しました。
<ListView Name="lstView" ItemsSource="{Binding MovieList}" >
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<!-- <VirtualizingStackPanel/> --> <!-- Working Fine -->
<StackPanel/> <!-- Items are not displayed -->
<!-- It must be wrap panel -->
<!-- OK, lets see with simple -->
</ItemsPanelTemplate>
</ListView.ItemsPanel>
<ListView.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Label Content="{Binding Path}" />
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
上記のコードでは、VirtualizingStackPanel を使用すると、項目は正常に表示されますが、1 つずつ表示されたくないのです。StackPanel を使用すると、アイテムが StackPanel に追加されていなくても、アイテムが画面に表示されません。Snoopツールで確認しました。アイテムを一覧表示するには、StackPanel の代わりに WrapPanel を使用する必要がありますが、単純な StackPanel を見てみましょう。
項目が StackPanel に表示されないのはなぜですか? 基本的には、WindowExplorer の大きなアイコン ビューのようなアイテムを一覧表示します。
.NET 4.0 を使用しています