0

ネストされたGridviewを含むページがあり、外側のグリッドの各行から文字列値を取得して、内側のグリッドを埋めようとしています。外側のグリッドから文字列変数に値を渡そうとすると、「'String'を'System.IFormatProvider'に変換するときにエラーが発生します」というエラーが発生します。次のコードを使用して、gridviewセルの値を変数に格納しています。

 Dim Svc_Name As String = grdOuterGridView.DataKeyNames(e.Row.RowIndex).ToString("THIRD_PARTY_SERVICE")

誰かが私がここで間違っていることを教えてもらえますか?ありがとう。

4

1 に答える 1

1

DataKeysNamesは既に文字列の配列であるため、ToString(....) 部分は必要ありません。

 Dim Svc_Name As String = grdOuterGridView.DataKeyNames(e.Row.RowIndex)

実際にあなたのエラーは ToString("THIRD_PARTY_SERVICE") から来ています。1 つのパラメーターを受け取る ToString() オーバーライドには、インターフェイスを実装するオブジェクトが必要ですIFormatProviderが、もちろん文字列にはこのインターフェイスがないため、エラーが発生します。ただし、 MSDN docsから読み取ることができるため、 String で ToString() を呼び出しても効果はありません

String のこのインスタンスを返します。実際の変換は実行されません。

于 2013-01-22T23:16:03.467 に答える