2011-01-12 71 views
0

我正在創建一個Silverlight應用程序。我已經成功創建了數據,將它綁定到了列表框,並且我得到了一列縮略圖。如何創建圖像的數據綁定網格?

這裏是我現有的代碼:

<StackPanel x:Name="ListPanel" Grid.Row="1"> 
    <ListBox Margin="0,0,-12,0" ItemsSource="{Binding Thumbs}"> 
    <ListBox.ItemTemplate> 
     <DataTemplate> 
     <Image Height="100" Width="100" Source="{Binding ThumbnailUrl}" Margin="12,0,9,0"/> 
     </DataTemplate> 
    </ListBox.ItemTemplate> 
    </ListBox> 
</StackPanel> 

不過,我想縮略圖的三列格,而不只是單個列。我將如何創建,並仍然通過數據綁定來完成?

謝謝。

回答

1

ListBox的佈局由其添加項目的面板決定。默認情況下,這是一個StackPanel(或VirtualizingStackPanel)。要創建不同的佈局,可以將面板更改爲其他內容。

不幸的是,沒有可以配置來創建3列布局的面板,但是如果您使用WrapPanel並約束列表框的寬度,它應該爲您提供所需的3列布局。

<ListBox Margin="0,0,-12,0" ItemsSource="{Binding Thumbs}" 
      Width="300"> 
    <ListBox.ItemTemplate> 
     <DataTemplate> 
     <Image Height="100" Width="100" Source="{Binding ThumbnailUrl}" Margin="12,0,9,0"/> 
     </DataTemplate> 
    </ListBox.ItemTemplate> 
    <ListBox.ItemsPanel> 
     <ItemsPanelTemplate> 
     <toolkit:WrapPanel /> 
     </ItemsPanelTemplate> 
    </ListBox.ItemsPanel> 
    </ListBox> 

WrapPanel是爲Windows Phone 7(http://silverlight.codeplex.com/)

+0

Silverlight工具包的一部分,這是我結束了基於我在其他地方得到了類似的建議做。我應該指出,你需要讓Silverlight Toolkit(http://silverlight.codeplex.com/releases/view/55034)在手機上使用它。 – 2011-01-13 00:22:14

相關問題