datagrid取不到值,高手帮帮我!

来源:百度知道 编辑:UC知道 时间:2024/06/07 03:23:58
在做删除时,需要去出这一列的主键
string id=this.DataGrid1.DataKeys[e.Item.Itemindex].toString();
但是但程序走到这里时,却提示什么index不能为负数什么的。
跟踪了一下,发现id值为null,书上说datakeys能取到的啊!,为什么我取不到了!很急,高手帮帮我!!谢谢!
呵呵!感谢大家的回答,问题已经解决了!原来是这段代码前面没有加this.datagrid1.DataKeyFild。呵呵

在点击当行的时候 在以下事件中写代码!
/****************************************************************
** 点击DataGrid上选择赋值给控件
****************************************************************/
protected void DataGrid_Invalid_ItemCommand(object source, DataGridCommandEventArgs e)
{
if (e.Item.ItemIndex >= 0)
{
int num = e.Item.ItemIndex;
this.lblId.Text = DataGrid_Illness.DataKeys[DataGrid_Illness.Items[num].ItemIndex].ToString();
}
}
/****************************************************************
这是我做的程序中的代码.通过测试

protected void grdProgram_RowCommand(object sender, GridViewCommandEventArgs e)
{
int index = Int32.Parse(e.CommandArgument.ToString());
string bookid = grdProgram.Rows[index].Cells[0].Text;
}
是这么取的!

e.Item.Itemindex 小于0 你可能需要选择一个单元格;

还要确定DataGrid1已经绑定到了数据

把页面代码贴出来!

grdProgram.R