我只想在 ListView 中显示项目,如 Windows 资源管理器(大图标)。同样,我使用了下面的代码。
<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,那么项目会显示得很好,但是我不想要一个一个。如果我使用 StackPanel,项目不会显示在屏幕上,即使项目也不会添加到 StackPanel。我检查了 Snoop 工具。我应该使用 StackPanel 的 WrapPanel 来列出项目,但让我们看看简单的 StackPanel。
为什么项目没有显示在 StackPanel 中?基本上我想列出像 WindowExplorer 大图标视图这样的项目。
我正在使用 .NET 4.0