我想在gridview中添加新行。每个细胞的值来自底部空白细胞。 如何获取单元格的值?
private void AddRow_Click(object sender, EventArgs e)
{
DataTable dt = ds.Tables["test"];
DataRow dr = dt.NewRow();
// not sure how to add
}
另请注意列中有一个复选框。
感谢。
答案 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);
自我解决。
答案 1 :(得分:0)
DataTable myTable = new DataTable();
DataColumn values = new DataColumn("Test");
myTable.Columns.Add(values);
DataRow rd = myTable.NewRow();
rd["Test"] ="";
myTable.Rows.Add(rd);
datagridview1.DataSource = myTable;
答案 2 :(得分:-1)
您可以使用Add方法将Rows添加到数据表中。
dt.Rows.Add(dr);
您可以使用重载的括号访问值。
dt.Rows[a][b]
将为您提供某一行和某列的值
要获取Checkbox的值,您可以将从dt.Rows [a] [b]检索到的对象强制转换为复选框,然后获取Checked属性的值。
((CheckBox)dt.Rows[a][b]).Checked
希望这有帮助,
马特