2010-06-15 60 views
0

例如, 我有一個整數1 - 10的集合。 我想在silverlight中的datagrid中動態顯示4列(可以是5,6,7)。 如何將集合綁定到數據網格以實現以下目標?在silverlight中綁定一個集合

 C1 C2 C3 C4 
R1  1  2  3  4 

R2  5  6  7  8 

R3  9  10 

乾杯

回答

1

很不幸,答案是可能的DataGrid是不是這個工作的正確工具。 DataGrid被設計爲顯示錶格數據,就像電子表格一樣,所以包裝並不是設計的一部分。

幸運的是,Silverlight(和Silverlight工具包)確實爲您提供了完成此類工作所需的工具。 ItemsControl專門用於創建數據列表的自定義視圖。由於默認的Silverlight工具包不包含「WrapPanel」,因此您還需要獲取包含一個的優秀Silverlight工具包。

然後,您可以將ItemsControl和WrapPanel組合起來以獲取一組數據。

<ItemsControl ItemsSource="{Binding NumbersList}"> 
    <ItemsControl.ItemsPanel> 
     <ItemsPanelTemplate> 
      <controlsToolkit:WrapPanel /> 
     </ItemsPanelTemplate> 
    </ItemsControl.ItemsPanel> 
    <ItemsControl.ItemTemplate> 
     <DataTemplate> 
      <TextBlock Text="{Binding}" /> 
     </DataTemplate> 
    </ItemsControl.ItemTemplate> 
</ItemsControl> 
+0

我還是喜歡一個DataGrid,因爲我需要顯示R3 C3空白單元格,C4 – Joshscorp 2010-06-15 11:59:44

+0

不幸的是,除非有人知道這裏一個聰明的黑客,你是不會讓你從想要的視覺行爲數據網格。或許我正在看問題全然不對。你的數據源真的是一個基元列表嗎? – apiguy 2010-06-15 12:49:33

相關問題