dataGridView控件中的行为手动通过Add()方法添加的时候可以通过Rows.Clear()方法清除数据;但是如果是通过DataSource绑定的话不能通过此方法清除,会报“不能清除此列表”的错误。如果用DataSource=null来清除的话会连列标题也一起清除,重新绑定DataSource后其结构会发生改变。通过下面的方法可以在不破坏DataSource的结构的前提下清空dataGridView中的数据:
private void BindEmptyDataTodataGridView(DataGridView dgv)
{
if (dgv.DataSource != null)
{
if (dgv.Rows.Count > 0)
{
DataTable DT_Empty = dgv.DataSource as DataTable;
DT_Empty.Rows.Clear();
dgv.DataSource = DT_Empty;
}
}
}