Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在datagridview中添加新行_C#_Winforms_Datagridview - Fatal编程技术网

C# 在datagridview中添加新行

C# 在datagridview中添加新行,c#,winforms,datagridview,C#,Winforms,Datagridview,我想向gridview添加新行。每个单元格的值来自底部空白单元格。 如何获取单元格的值 private void AddRow_Click(object sender, EventArgs e) { DataTable dt = ds.Tables["test"]; DataRow dr = dt.NewRow(); // not sure how to add } 还请注意,列中有一个复选框 谢谢。您可以使用add方法向dat

我想向gridview添加新行。每个单元格的值来自底部空白单元格。 如何获取单元格的值

private void AddRow_Click(object sender, EventArgs e)
    {
        DataTable dt = ds.Tables["test"];
        DataRow dr = dt.NewRow();
        // not sure how to add
    }
还请注意,列中有一个复选框


谢谢。

您可以使用add方法向datatable添加行

dt.Rows.Add(dr);
可以使用重载括号访问这些值

dt.Rows[a][b]
将为您提供特定行和特定列的值

要获取复选框的值,可以将从dt.Rows[a][b]检索到的对象强制转换为复选框,然后获取选中属性的值

((CheckBox)dt.Rows[a][b]).Checked
希望这有帮助

Matt

可以使用该代码

//define datatable (with all columns you want to have)...
  DataRow dr;
  int lastRow = this.dataGridView1.Rows.Count-2;
  for(int i=0;i<dataGridView1.Columns.Count; i++)
  {
     // grab the values from the last row cells.
     dr[i] = dataGridView1[i, lastRow].Value;
   }
     dataTable.Rows.Add(dr);

自我重新爱上它。

将新行添加到datatable,然后更新gridview,ds.Tables[Test].rows.adddr;可以是addrow,而不是add。用户需要在运行时添加值,这些值来自这些单元格。用户只能访问界面而不能访问代码…我知道,但在代码中,您评论说您不确定如何添加新行,我只是解释了itOkay。我不知道如何获取单元格的名称,例如cell1.ToString之类。单元格是根据基于0的索引排序的。一行中的第一个单元格是单元格0,第二个单元格是单元格1,以此类推
//define datatable (with all columns you want to have)...
  DataRow dr;
  int lastRow = this.dataGridView1.Rows.Count-2;
  for(int i=0;i<dataGridView1.Columns.Count; i++)
  {
     // grab the values from the last row cells.
     dr[i] = dataGridView1[i, lastRow].Value;
   }
     dataTable.Rows.Add(dr);