访问单元格值时避免在数据网格中使用单元格[x]

本文关键字:单元格 网格 数据 访问 数据网 | 更新日期: 2023-09-27 18:21:20

访问数据网格的值时,如何避免使用dataGrid.Rows[x].Cells[y].Value?我希望使用描述性名称来引用单元格值,而不是索引。

访问单元格值时避免在数据网格中使用单元格[x]

Rows中第n个项的描述性名称是什么?我认为您一直在使用基于0的索引,因为Rows没有基于字符串的索引器。

一旦有了DataGridViewRow,就可以使用string值对单元格进行索引:

foreach (var row in dataGrid.Rows) {
    var cell = row.Cells["someColumn"];
}

尝试:

DataGridView.Rows[index].Cells["CellName"].Value;

CellName是您的列名。这适用于datagridview。我不知道数据网格。

您可以将所有数据放入一个类中并使用数据绑定。请参阅如何:将数据绑定到MSDN上的Windows窗体DataGridView控件。

然后您可以通过数据对象访问您的数据字段

MyDataClass data = (MyDataClass)dataGrid.CurrentRow.DataBoundItem;
Console.WriteLine(data.LastName);

如果数据网格支持使用列名进行索引,请这样做:

dataGrid.Rows[x].Cells["columnName"]

我不确定数据网格是否支持这种语法,如果不支持,我认为首选的方法是使用常量来获得更好的代码可读性,如下所示:

const int ColumnNameIndex = 0;
dataGrid.Rows[x].Cells[ColumnNameIndex];