windows 形成 datagridview,给出 IndexOutOfRangeException

windows form datagridview, giving IndexOutOfRangeException

我有一个由随机生成的数字组成的 datagridview 6x6,我想读取数据网格中的每个单元格并检查有多少数字是重复的,我认为一个好主意是将每个单元格的值放入一个数组中,然后解决。一旦它被排序,我会检查每个值和它旁边的值,看看它们是否相同,如果它们是相同的,我会增加 counter.My 问题是当我 运行 这段代码时,我得到一个 System.IndexOutOfRangeException: 'Index was outside the bounds of the array.' 在我们迭代 datagridview 的部分,这一行“numeros[c] = Convert.ToInt16(cell.Value);”。 经过一些测试后,我试图只显示每个单元格的值,但它们显示为 0。

private void button2_Click(object sender, EventArgs e)
        {
            int cont = 0;
            int[] numeros = new int[36];
            int c = 0;
            foreach (DataGridViewRow row in dataGridView1.Rows)
            {
                foreach (DataGridViewCell cell in row.Cells)
                {
                    numeros[c] = Convert.ToInt16(cell.Value);
                    c++;
                }
            }
            Array.Sort(numeros);
            label12.Text = "";
            for(int i = 0; i < 36; i++)
            {
                label12.Text += numeros[i].ToString() + ", ";
                if (i == 35)
                {
                    break;
                }
                else
                {
                    if (numeros[i] == numeros[i + 1])
                    {
                        cont++;
                    }
                }

            }
            label7.Text = cont.ToString();
        }

网格底部有一个额外的空白行,必须将其删除,但程序运行良好