winform中用到了datagridview,在实现查询功能,并重新绑定结果数据源的过程中,发现datagirdview并没有清空原来的数据,而是将结果自动添加在原数据的下面。
一开始我将datagridview的数据源设置为空:datagridview.DataSource=null;但是发现没有用。
又用了datagridview.Rows.Clear(),结果出错了,提示"不能清除此列表"。
在网上查了下,原来用数据源绑定的datagridview不能用Rows.Clear()清除,也不能通过将数据源设置为空,只有手动添加的数据可以这样来清空。
后来我用了网上以为前辈的方法,可以保持原有的列 :
//绑定的原数据
DataTable dt=new DataTable();
datagridview.DataSource=dt;
//清空原数据
dt.Rows.Clear();
datagridview.DataSource=dt;