当我们需要重置DataGridView里的数据时,我们希望把单元格都进行清空,很不幸的是不能用下面这个方法:
dataGridView1.DataSource=null;这样会把列名也清空。
解决办法:
1.如果绑定了数据表DataTalbe ,可以把数据表给一个临时表,然后对临时表进行清空,这样就剩一个表结构,再将该临时表设为数据源。
try
{
DataTable dt_xx = (DataTable) dataGridView1.DataSource;
dt_xx.Rows.Clear();
dataGridView1.DataSource = dt_xx;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "", MessageBoxButtons.OK);
}
2.如果没有绑定数据表
如果没有绑定数据表,就只能用for循环,一个一个的清空单元格。
for(int i = 0;i< number_of_row;i++)
{
for(int j = 0 ;j < number_of_colum;j++)
{
this.dataGridView1.Rows[i].Cells[j].Value = "";
}
}
这样就可以清空数据集,同时保留列名。