我知道统一网格不支持行跨度,但它可以通过覆盖我在 Google 上阅读的方法以某种方式实现,但我真的可以使用一个例子我该怎么做。我想要实现的是一个类似于这样的布局:
----------
| 1 | 2 |
----------
| 3 |
----------
所以基本上我希望第三个孩子跨越 2 列。我可以使用网格,但遗憾的是我不知道任何方法如何做到这一点,因为所有的孩子都是动态创建的,我无法在女巫单元格中指定孩子将被放置。
我认为最好使用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);
有关此内容的完整示例,请参阅 MSDN 上的Grid.SetRow
方法、Grid.SetRowSpan
方法、Grid.SetColumn
方法和Grid.SetColumnSpan
方法页面。