在DataGridView.Rows []中使用For循环Int

时间:2014-09-01 19:09:01

标签: c# .net for-loop

在我的WFA项目(C#)中,我需要将所有DataGridView值读取到数组。我想使用for循环。 例如,对于第一行,我尝试使用i = 0值并尝试将值读取到数组。 等;

string[] Array1 = new string[2];    
for (int i = 0; i < NumOfRow; i +=1)
  {
    string [0] = dgv1.Rows[i].Cells["Total1"].Value.ToString();
    string [1] = dgv1.Rows[i].Cells["Total2"].Value.ToString();
    string [2] = dgv1.Rows[i].Cells["Total3"].Value.ToString();
  }

我得到错误,没有价值&#34;我&#34;。我试图在Print动作中使用它。我也在BeginPrint活动中给予了价值。

2 个答案:

答案 0 :(得分:1)

你的代码是正确的,但似乎有一些错误,比如你没有使用正确的数组大小,第二个你错过数组名称,同时为数组赋值。

以下是您的帮助示例。

string[] Array1 = new string[3];   

                for (int i = 0; i < dataGridView1.Rows.Count; i +=1)
                {
                    Array1 [0] = dataGridView1.Rows[i].Cells[0].Value.ToString();
                    Array1 [1] = dataGridView1.Rows[i].Cells[1].Value.ToString();
                    Array1 [2] = dataGridView1.Rows[i].Cells[2].Value.ToString();
                }

答案 1 :(得分:-1)

我想你想要更像这样的东西:

List<string[]> allValues = new List<string[]>();
foreach(var row in dvg1.Rows)
{
    string[] arr = new string[3];  
    arr[0] = row.Cells["Total1"].Value.ToString();
    arr[1] = row.Cells["Total2"].Value.ToString();
    arr[2] = row.Cells["Total3"].Value.ToString();

    allValues.add(arr);
}

我不确定为什么我被投票了。除了你的编译器错误,我试图解决你在循环中每次迭代时覆盖自己的问题。