2

私はグリッドビューを持っています

 DataKeyNames="FilterId,ItemId"

field. 両方のフィールドの各値を取得するにはどうすればよいですか

 gdv_RowEditing 

event.やってみた

 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

これを試して

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 に答える
1

あなたが使用しているため、このエラーの原因

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

ここで値はオブジェクトのタイプであるため、オブジェクトにインデックスを付けることはできません。

データキー値を取得するには、このように Value の代わりに Values を使用します

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

お役に立てれば..

于 2012-10-09T05:43:16.353 に答える