还是关于GridView的问题
protected void DataGrid1_DeleteCommand(object source,DataGridCommandEventArgs e)
{
String str = DataGrid1.DataKeys[(int)e.Item.ItemIndex].ToString(); ///这句怎么老是报错,说什么索引超出范围,但是调试查看没有超出啊?这是怎么回事啊?
}
------解决方案--------------------前面加个判断:
if (e.Item.ItemIndex == -1)
return;
String str = DataGrid1.DataKeys[e.Item.ItemIndex].ToString();
------解决方案--------------------String str= this.DataGrid1.DataKeys[this.DataGrid1.SelectedIndex].ToString();
------解决方案--------------------加if (e.Item.ItemIndex == -1) return吧
------解决方案--------------------if (e.Item.ItemIndex != -1)
{
写你的代码
}
------解决方案--------------------e.Item.ItemIndex == -1
所以超出索引范围,
加个判断
if( e.Item.ItemIndex != -1 ){....}