在 GridView c# 中按名称而不是数字调用单元格

call cell by its name instead of number in GridView c#

我正在使用这行代码

a = row.Cells[5].Text;
b = row.Cells[6].Text;
c = row.Cells[9].Text;
d = row.Cells[12].Text;

它工作正常。

但我的问题是当我向网格添加新列或删除一列或更改列顺序时。

在那种情况下,每一行代码都必须随着列的顺序发生变化而变化。

有什么方法可以使用列名而不是数字?

您应该为每个单元格添加一个自定义属性以便识别它。 接下来对 row.Cellsrow.Cells[i] returns 一个 DataControlFieldCell 对象进行循环。在这里你有 Attributes,你会找到你的自定义属性。这样你就可以了解它是什么细胞了。