请帮助,因为我做了一个小项目与Xamarin
它是一个连接到SQL服务器数据库,然后填充数据表的数据,然后显示在网格中的数据。其中包含已被编程添加的条目,而不是在XAML中...这意味着条目没有名称或ID分配给他们中的每一个..即使这些目前它工作得很好...并且数据被正确调用,但正如您所知,在Grid中有行和列,我需要将同一行中的条目的内容相加或相乘,或者将一列或多列的内容相加
如何对网格中同一行或多行的两个单元格求和?网格是否与之匹配,还是必须选择另一种渲染
注意:::〉〉〉Maingrid是我的网格
////// define the number of rows according to the number of item you have
for (int i = 0; i < dt.Rows.Count; i++)
{
MainGrid.RowDefinitions.Add(new RowDefinition { Height = new GridLength(1, GridUnitType.Star) });
}
//////// defining column number (in this case 3)
for (int j = 0; j < dt.Columns.Count; j++)
{
MainGrid.ColumnDefinitions.Add(new ColumnDefinition { Width = new GridLength(1, GridUnitType.Star) });
}
////////// adding the items to the grid (3 column , RN rows)
for (int i = 0; i < dt.Rows.Count; i++)
{
for (int num = 0; num < dt.Columns.Count; num++)
{
Entry entry = new Entry();
entry.Text = dt.Rows[i][num].ToString();
entry.TextColor = Color.Blue;
entry.BackgroundColor = Color.GhostWhite;
entry.HorizontalOptions = LayoutOptions.FillAndExpand;
entry.HorizontalTextAlignment = TextAlignment.Center;
entry.VerticalTextAlignment = TextAlignment.Center;
entry.Keyboard = Keyboard.Numeric;
entry.TextChanged += MyEntry_TextChanged;
entry.WidthRequest = 50;
MainGrid.Children.Add(entry, num , i);
}
1条答案
按热度按时间1sbrub3j1#
你可以先得到两个单元格,然后得到两个单元格的和,并将其设置为另一个单元格的值。
您可以尝试以下代码:
上面的代码可以使你的MainGrid像下图中的网格一样:
另外,点是
MainGrid.Children.Where(view => Grid.GetRow(view) == i && Grid.GetColumn(view) == 0 ).FirstOrDefault()
这条线,如果知道子视图的行索引和列索引,就可以用它来获取网格中的任何子视图。