2013-01-22 2 views
0

외부 격자의 각 줄에서 문자열 값을 가져 와서 내부 격자를 채우려는 중첩 Gridview가있는 페이지가 있습니다. 외부 격자의 값을 문자열 변수에 전달하려고하면 'String'을 'System.IFormatProvider'로 변환 할 때 오류가 발생합니다. "오류가 발생합니다. 변수에 gridview 셀 값을 저장하려면 다음 코드를 사용하고 있습니다.'String'을 'System.IFormatProvider'로 변환 할 때 오류가 발생했습니다.

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

아무도 내가 여기서 잘못하고 있다고 말할 수 있습니까? 감사.

+0

"THIRD_PARTY_SERVICE"란 무엇인가요? – Steve

답변

1

DataKeysNames은 이미 문자열 배열이며 ToString (....) 부분은 필요하지 않습니다.

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

실제로 오류는 ToString ("THIRD_PARTY_SERVICE")에서 발생합니다. 하나의 매개 변수를 취하는 ToString() 재정의에는 IFormatProvider 인터페이스를 구현하는 객체가 필요하지만 물론 문자열에는이 인터페이스가 없으므로 오류가 발생합니다. 그러나 ToString()을 호출하면 문자열에서 아무런 효과가 없습니다. MSDN docs

문자열의이 인스턴스를 반환합니다. 실제 변환은 수행되지 않습니다.

관련 문제