gridview行删除出错:索引越界

出现这样的错误是因为在删除后没有重新绑定。

这样操作,只是应该更改了数据库,但是我们是把datatable赋值给DataSource,这是datatable并没有修改,所以就会出错。

int id = Convert.ToInt32(gvProject.DataKeys[e.NewEditIndex].Value);
int id = Convert.ToInt32(gvProject.DataKeys[e.NewEditIndex].Values[0].ToString());

这两句话的意思是一样的,我平时用第一句话,是因为此时刚好是values[0],而

values[0]=value,

所以不会有任何问题。

 

 

可是如果有时我要是取得values不是第一个怎么办,如果还按第一个语句写的话,那么就出错了。

 

 

原文地址:https://www.cnblogs.com/yichengbo/p/2381870.html