2

我有一个gridview

 DataKeyNames="FilterId,ItemId"

field.我怎样才能获得两个字段中的每个值

 gdv_RowEditing 

事件。我试过了

 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'
4

2 回答 2

1

此错误原因是因为您正在使用

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

这里的值是对象的类型,所以你不能索引对象。

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

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

希望这可以帮助..

于 2012-10-09T05:43:16.353 回答
1

尝试这个

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

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

于 2012-10-09T05:40:24.643 回答