我需要将项目浮动到列表框中,使它们看起来像是两行...我怎么能?我试过了,但他们继续一个接一个地出现......我的xml:
<ListBox Name="listacomico" Width="480" Margin="0,112,0,0">
<ListBox.ItemTemplate>
<DataTemplate>
<Button Background="White" BorderBrush="#346699" Click="apri_comico" Name="{Binding Myordine}" Margin="0,0,0,0" Padding="0" HorizontalAlignment="Left" HorizontalContentAlignment="Left">
<Button.Content>
<StackPanel Orientation="Horizontal" Width="125">
<Image Source="{Binding Myimmagine}" HorizontalAlignment="Left" VerticalAlignment="Top" />
</StackPanel>
</Button.Content>
</Button>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
答案 0 :(得分:2)
如果你想要显示彼此相邻的项目,你必须使用WrapPanel,因为它已在上面的评论中提出。
这不是与ItemTemplate相关的行为。 ItemTemplate将定义项目的外观。
要实现您想要做的事情,您必须像这样定义 ItemsPanel :
<ListBox ItemsSource="{Binding CollectionSource}">
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<toolkit:WrapPanel />
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
</ListBox>
工具包:意味着我在xaml的顶部有一个名为toolkit的命名空间:
xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit"
如果项目尚未完成,您必须在项目中添加对Silverlight Toolkit for WP7的引用!