首先你有代码
OleDbCommand mycommand=new OleDbComamnd("xxxx",conn);
这个xxxx就是Sql语句,如:
“select * from xxx  where id=@Id"
那么这个@id是什么意思呢
可以这样:
myCommand.Parameters.Add(new SqlParameter("@Id", OleDbType.Char, 11));myCommand.Parameters["@Id"].Value = MyList.DataKeys[(int)e.Item.ItemIndex];
那么MyList.DataKeys[(int)e.Item.ItemIndex]的值就会放到id=后面

解决方案 »

  1.   

    myCommand.Parameters.Add(new SqlParameter("@Id", OleDbType.Char, 11));
    在COMMAND OBJECT的参数中添加一个新的参数.
    myCommand.Parameters["@Id"].Value = MyList.DataKeys[(int)e.Item.ItemIndex];
    给参数复值
      

  2.   

    楼上的高手,请问DataKeys[(int)e.Item.ItemIndex是个什么值?
      

  3.   

    DataKeys[(int)e.Item.ItemIndex你在DataGrid中定义了DataKeyField,这个就是它对应的当前行的值