我在DataGrid中绑定一个“删除”按钮列,功能代码如下:
DataSet myDataSet=new DataSet();
OleDbDataAdapter myAdapter=new OleDbDataAdapter(selectcmd,conn);
myAdapter.Fill(myDataSet);
DataTable myDataTable=myDataSet.Tables[0];
for(int i=0;i<myDataTable.Rows.Count;i++)
{
if(DataGridResult.DataKeys[e.Item.ItemIndex].ToString()==myDataTable.Rows[i][0].ToString())
{
myDataTable.Rows[i].Delete();
break;
}
}
运行后,点击DataGrid中某行的“删除”按钮,就报错:
索引超出范围。必须为非负值并小于集合大小。参数名: index
报错行:if(DataGridResult.DataKeys[e.Item.ItemIndex].ToString()==myDataTable.Rows[i][0].ToString())
怎么回事啊?请大家帮忙,谢谢!
DataSet myDataSet=new DataSet();
OleDbDataAdapter myAdapter=new OleDbDataAdapter(selectcmd,conn);
myAdapter.Fill(myDataSet);
DataTable myDataTable=myDataSet.Tables[0];
for(int i=0;i<myDataTable.Rows.Count;i++)
{
if(DataGridResult.DataKeys[e.Item.ItemIndex].ToString()==myDataTable.Rows[i][0].ToString())
{
myDataTable.Rows[i].Delete();
break;
}
}
运行后,点击DataGrid中某行的“删除”按钮,就报错:
索引超出范围。必须为非负值并小于集合大小。参数名: index
报错行:if(DataGridResult.DataKeys[e.Item.ItemIndex].ToString()==myDataTable.Rows[i][0].ToString())
怎么回事啊?请大家帮忙,谢谢!
解决方案 »
- 如何替换同目录下文本文件里的指定字符串后面的内容呢?
- C# Receive 您的主机中的软件放弃了一个已建立的连接
- 如何实现类似于VS里面的属性窗口
- WebServer连接MSSQL取题返回数据集问题
- 关于一个DataGrid 插入不同的数据的问题 对我来说有点难
- 想要做一个看起来像Excel的界面,用什么做比较好呢
- 零售商品企业如何解决多供应商供货商题
- ××××实时曲线的处理————在线等待
- 在PDA中怎么添加shell32.dll
- C#下如何连接远程DB2数据库,最好有实际的例子参考一下
- 根据Get请求取得字符串,为什么得到的字符串后面总是有"\r\n\0\0"等字符?
- 求像outlook左边的免费、好用的控件(c#应用程序中)
{
...
}