2013-10-23 55 views
0

我知道統一網格不支持行跨度,但它通過重寫我在Google上閱讀的方法的某種方式可能,但我真的可以使用一個示例,我該如何做到這一點。我想實現的是類似這樣的佈局:統一網格佈局

---------- 
| 1 | 2 | 
---------- 
| 3  | 
---------- 

所以基本上我想要的第三個孩子超過2列被跨越。我可以使用網格,但可悲的是我不知道任何方法,我怎麼能這樣做,因爲所有的孩子都是動態創建的,我不能在巫婆細胞中指定孩子將被放置。

+0

如果你在google上閱讀過,那麼你應該發佈鏈接。但你沒有在谷歌閱讀它,因爲它不可能:統一意味着統一。 OTOH,谷歌確實告訴你如何設置一個網格項目的行和列。 –

回答

0

我認爲你最好使用Grid控件。雖然你說你不能指定在哪個單元格中的子將會放到,我會試着修復的問題,而不是創建一個新的控件。如果你能解決這個問題,那麼這可能會對你有所幫助。

來填充代碼特定的行,你可以使用Grid.SetRow方法和填充特定列,您可以使用Grid.SetColumn方法:

Grid.SetRow(rectangle, 1); 
Grid.SetColumn(rectangle, 1); 

同樣地,設置一排跨度,您可以使用該Grid.SetRowSpan方法,並設置一列跨度,可以使用Grid.SetColumnSpan方法:

Grid.SetRowSpan(rectangle, 2); 
Grid.SetColumnSpan(rectangle, 2); 

請參閱Grid.SetRow MethodGrid.SetRowSpan MethodGrid.SetColumn MethodGrid.SetColumnSpan Method MSDN上的一個完整的例子。

+0

問題是我無法控制生成的文檔,我只需要製作一個樣式並顯示它們,使用統一的網格完美地工作,因爲我希望除了第三個文檔即將出現,並且我想在完整行(就像你可以用列範圍做的那樣) – Rock3rRullz

+0

如果你發現了一篇文章,告訴你如何將span屬性添加到你的'UniformGrid'中,那就去...我沒有看到它,看不到它可以在不重寫內部的'ItemsPanel'的情況下工作,這並不重要。 – Sheridan