2010-10-25 138 views
0


在WPF中工作時,我需要動態網格。通過這個我的意思是一個網格,只包含一種對象,有一個模板,該對象等,但不像一個類似的ItemsControl像一個Listbox,我希望給網格最大列屬性。這應該作爲分隔符,然後根據網格內的對象數量計算所需的行數。爲了做到這一點,我想到了繼承一個Grid來利用它的Row和Column屬性,但是我有一個問題......我不知道如何實現一個ItemsSource屬性以外的繼承ItemSource從一個ItemsControl ...創建動態網格控件

所以我的問題有兩個部分...

  1. 我在追求這個正確的方式?我應該被inherriting ItemsControl的,並試圖重新實現網格行爲
  2. 如果是做正確的方式,如何實現其相應的ItemTemplate

回答

1

您想要類似UniformGrid的東西嗎?如果您設置了Columns屬性(並且不設置行屬性),它將自動確定要創建多少行來保存其項目。

+0

你的答案和Vlad的相似之處在於它們使用UniformGrid的不同實現。我會嘗試他們兩個,但謝謝你!我不知道這個控件的存在 – TerrorAustralis 2010-10-25 00:49:07

+0

UniformGrid似乎並沒有提供像ItemsSource這樣的功能。 – Vlad 2010-10-25 00:52:15

+0

這就是我給你打勾的原因:) UniformGrid用於兩者,並提供我想要的大部分功能,但將它與Listbox混合提供了我需要的所有功能 – TerrorAustralis 2010-10-25 00:57:26