Xamarin网格,列和行数量

时间:2017-10-07 13:24:16

标签: xamarin.forms

我对c#代码相对较新,我想知道是否有任何方法可以获得网格中的列数和行数并将该数量存储在变量中

像: var columnamount = grid.columnamount;

但我找不到任何有用的东西

由于

3 个答案:

答案 0 :(得分:0)

供参考documentation

您可以这样做,纯粹基于我在文档中看到的内容:

var countColumns = grid.Children.Where( c => c.Column).Max();
var countRows = grid.Children.Where( c => c.Row).Max();

但我不确定您是否可以访问子元素上的Row anf Column属性。

答案 1 :(得分:0)

您可以使用以下代码直接通过ColumnDefinitions和RowDefinitions属性获取列和行的计数。无需枚举网格的子节点,因为您可能没有每列/每行的视图。

var columnCount = grid.ColumnDefintions.Count;
var rowCount = grid.RowDefinitions.Count;

答案 2 :(得分:0)

我猜这不是最好的检查方法,但它正在起作用(列也是如此):

编辑:是,对于列不起作用

int GetRowsCount(Grid grid)
{
    var item = grid.Children.FirstOrDefault();
    return item != null ? Grid.GetRow(item) + 1 : 0;
}