指数超出范围.必须是非负数且小于集合错误的大小

Rya*_*oly 1 c# ms-access datagridview rows

嗨,我在运行这段代码时遇到此错误,无法弄明白.干杯:

      DataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
        try
        {
            for (int i = 0; i <= (DataGridView1.Rows.Count); i++)
            {

                if (DataGridView1.Rows[i].Cells[2].ToString().Equals(returnID))
                {
                   SignIn_Time(updateCmd, OLEDB_Connection, varName, varID, varTime);
                   break;
                }
            }
        }
        catch
        {
Run Code Online (Sandbox Code Playgroud)

Lar*_*ech 7

它应该小于计数,不等于,因为从零开始的索引:

i < DataGridView1.Rows.Count
Run Code Online (Sandbox Code Playgroud)


das*_*ght 6

发生了什么错误很清楚:

[index]非负且小于集合的大小.

更换<=<的环头:

for (int i = 0; i < (DataGridView1.Rows.Count); i++) {
    ...
}
Run Code Online (Sandbox Code Playgroud)

此外,您需要确保每行至少有三个单元格,因为您正在连续访问第三个单元格: Cells[2]