我遇到一个令人沮丧的错误,我很确定这是一件简单的事情,但我无法弄清楚是什么。
这是我的功能:
public void setDistanceCellValue(int value, int row, int column)
{
try
{
Console.WriteLine("Row: " + row + " Column: " + column + " Value: " + value);
logGrid.Rows[row].Cells[column].Value = value.ToString();
}
catch (Exception ex)
{
MessageBox.Show(string.Format("An error occurred: {0}" + "\r\n" + "\r\n" + "Row: " + row + " Column: " + column + " Value: " + value, ex.Message));
}
}
logGrid
值设置行是错误的,其中“索引超出范围。必须是非负数且小于集合的大小。参数名称:index。”
我一直在检查和检查,我的网格有6行8列,并且在第2行第3列调用该函数(因此调用所有调试代码)。对于我的生活,我无法弄清楚为什么我说e.rowIndex
使用负索引或大于5的索引或e.columnIndex
使用大于5的索引。
如果可以,请帮助我。
答案 0 :(得分:1)
指数范围从 0到N-1 ,而不是 1到N 。
编辑:
两个建议
Console.WriteLine
Console.WriteLine("Row Count: {0}", logGrid.Rows.Count);
Console.WriteLine("Cell Count: {0}", logGrid.Rows[row].Cells.Count);
AutoGenerateColumns
属性,看它是否按预期设置。