2011-05-09 45 views
0

我有以下XAML代码:裹面板中列表框

<DataTemplate x:Key="FriendsDataTemplate"> 
    <toolkit:WrapPanel Orientation="Horizontal" ItemWidth="173" ItemHeight="233"> 
     <Grid VerticalAlignment="Top" HorizontalAlignment="Right"> 
      <Grid.RowDefinitions> 
       <RowDefinition Height="183"/> 
       <RowDefinition Height="50"/> 
      </Grid.RowDefinitions> 
      <Image x:Name="FriendAvatar" Margin="1,1,11,11" Source="{Binding ImageURL}" Width="173" Height="173"/> 
      <Grid Grid.Row="1" HorizontalAlignment="Right" VerticalAlignment="Top"> 
       <TextBlock x:Name="FriendName" Margin="0" Text="{Binding FriendName}" Grid.Row="1" TextWrapping="Wrap" VerticalAlignment="Center" HorizontalAlignment="Center" Padding="0,0,10,0" TextAlignment="Right"/> 
      </Grid> 
     </Grid> 
    </toolkit:WrapPanel> 
</DataTemplate> 

<Grid x:Name="FriendsGrid"> 
    <ListBox x:Name="FriendsList" Margin="0" ItemTemplate="{StaticResource FriendsDataTemplate}"/> 
</Grid> 

FriendsList宽度是420PX。

我的问题是:我想要两个项目列,但我看到一个。

有什么建议吗?

+2

什么是错误/问题? – hammar 2011-05-09 16:10:16

+0

我看不到任何ListBoxItem。 – VansFannel 2011-05-09 16:16:53

+0

你的WrapPanel(网格)中只有一个元素,所以它没有任何用处。在你的评论中你提到了Columns,但是你在网格中使用了行 - 而不是列...另外,你如何填充你的ListBox? – Damian 2011-05-09 16:34:02

回答

5

我找到了解决方案。这是我的工作XAML代码:

<DataTemplate x:Key="FriendsDataTemplate"> 
    <Grid VerticalAlignment="Top" HorizontalAlignment="Right"> 
     <Grid.RowDefinitions> 
      <RowDefinition Height="183"/> 
      <RowDefinition Height="50"/> 
     </Grid.RowDefinitions> 
     <Image x:Name="FriendAvatar" Margin="1,1,11,11" Source="{Binding ImageURL}" Width="173" Height="173"/> 
     <Grid Grid.Row="1" HorizontalAlignment="Right" VerticalAlignment="Top"> 
      <TextBlock x:Name="FriendName" Margin="0" Text="{Binding FriendName}" Grid.Row="1" TextWrapping="Wrap" VerticalAlignment="Center" HorizontalAlignment="Center" Padding="0,0,10,0" TextAlignment="Right"/> 
     </Grid> 
    </Grid> 
</DataTemplate> 

<Grid x:Name="FriendsGrid"> 
    <ListBox x:Name="FriendsList" Margin="0" ItemTemplate="{StaticResource FriendsDataTemplate}" Width="420"> 
     <ListBox.ItemsPanel> 
      <ItemsPanelTemplate> 
       <toolkit:WrapPanel ItemWidth="173" ItemHeight="233"/> 
      </ItemsPanelTemplate> 
     </ListBox.ItemsPanel> 
    </ListBox> 
</Grid> 

我添加了一个ListBox.ItemsPanelListBox定义。我已经将包装面板移动了。