gridview中的datakeynames

时间:2012-10-09 05:12:59

标签: c# asp.net

我有gridview有

 DataKeyNames="FilterId,ItemId"

field。如何在

中的两个字段中获取每个值
 gdv_RowEditing 

event.i尝试了

 protected void gdv_RowEditing(object sender, GridViewEditEventArgs e)
    {
     string a = gdv.DataKeys[e.NewEditIndex].Value[0].ToString(); 
     string b = gdv.DataKeys[e.NewEditIndex].Value[1].ToString();
    }

但它显示错误,如

'cannot apply indexing with [] to an expression of type object'

2 个答案:

答案 0 :(得分:1)

试试这个

IOrderedDictionary datakeyNames = gdv.DataKeys[0].Values;
string a = datakeyNames["FilterId"].ToString();
string b = datakeyNames["ItemId"].ToString();

请注意,您必须导入System.Collections.Specialized

答案 1 :(得分:1)

此错误原因是您正在使用

   gdv.DataKeys[e.NewEditIndex].Value[0].ToString();

此处值是对象的类型,因此您无法对对象建立索引。

获取数据键值使用值而不是像这样的值

  gdv.DataKeys[e.NewEditIndex].Values[0].ToString();

希望这会有所帮助..