我想在 WrapPanel 中显示图像列表。我该怎么做,或者我应该使用其他控件?
问问题
14689 次
3 回答
28
您绝对可以使用 WrapPanel 显示图像列表,垂直或水平滚动。要使用您的图像获得像 People hub 中那样的全景图块效果,您可以执行以下操作:
<controls:PanoramaItem Header="something" Orientation="Horizontal" Margin="0,-15,0,0" >
<ListBox Name="SomeList" Margin="0,0,-12,0" ItemsSource="{Binding SomeItemsList}" >
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<toolkit:WrapPanel x:Name="wrapPanel" Width="700" />
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" Margin="0,0,0,17">
<Image Height="200" Width="200" Margin="12,0,9,0" Source="{Binding ImageURL}" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</controls:PanoramaItem>
请注意,ListBox 中的 WrapPanel 确实会获取您定义的 DataTemplate .. 所以您可以完全自由地将任何列表绑定到您的 WrapPanel。
希望这可以帮助!
于 2011-11-24T22:13:30.950 回答
11
搜索相同的东西并遇到这个:在 WrapPanel 中显示项目集合。
<ItemsControl ItemsSource="{Binding ActorList}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Image Source="{Binding Image}" Height="100"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<WrapPanel/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</ItemsControl>
或者您可以使用Xceed 的 SwitchPanel。
于 2018-01-12T19:10:16.000 回答
2
是的,绝对不是 WrapPanel,它没有 ItemsSource,它不能列出一个列表。使用ListBox,可以设置ItemsSource。
编辑
于 2011-11-24T14:36:47.120 回答