DataGridView 清空时出现System.ArgumentException:“不能清除此列表。”

发布时间:2020年07月04日 阅读:262 次

DataGridView 清空时出现System.ArgumentException:“不能清除此列表。”

原因是DataGridView 绑定了数据源,如果说数据源不需要了,就把数据源取消即可。如下代码:

 dataGridView4.DataSource = null;

如果需要数据源,就需要改变代码(以下代码及方式未验证过,来自CSDN 博主:qiuyu6958334)

DataGridView .datasource = ds.Tables["expert"];

解决办法如下: 删除这样的代码,采用 foreach 循环填入的方式,

 DataSet ds = ExcelToDataSet(resultFile, out strMsg);
 DataTable dt = ds.Tables["expert"];
 if (dt.Rows.Count > 0) {
     foreach (DataRow dr in dt.Rows) {
         Dgv_Expert.Rows.Add(false, dr["code"].ToString(), dr["name"].ToString(), dr["sex"].ToString(), dr["birthDay"].ToString(), dr["phone"].ToString(), dr["tel"].ToString(), dr["aid"].ToString(), dr["idcard"].ToString(), dr["company"].ToString(), dr["mid"].ToString(), dr["rid"].ToString(), dr["note"].ToString());
      }
}


Tag:dataGridView
相关文章

发表评论: