2011-01-21 11 views
2
dataGridView.Rows.Add(
    metaData.Offset.ToString("X2"), 
    metaData.Length, 
    metaData.Format,  // This parameter goes to a ComboBox cell which throws an 
    metaData.Description, //  exception above      
    null, 
    null); 

DataGridViewComboBoxCell에 프로그래밍 방식으로 데이터를 할당하는 올바른 방법은 무엇입니까?System.ArgumentException : DataGridViewComboBoxCell 값이 유효하지 않음

+0

전체 조각은 성명, 따라서 하나 개의 라인입니다. – leppie

+1

DataGridViewComboBoxColumn 확인에 값을 제공해야하는 경우 http://stackoverflow.com/questions/4744384/how-to-set-value-in-datagridviewcomboboxcolumn-from-a-datatable/4744550#4744550 – Binil

답변

12

이 문제를 해결하려면 DataGridView에 "DataError"를 추가하십시오. 그 모든 것이 단계입니다. DataGridview를 두 번 클릭하고 이벤트 목록에서 "dataerror"이벤트를 선택하십시오.

DataError 이벤트를 사용하면 데이터 처리 작업 중 컨트롤에서 호출 한 코드에서 throw 된 예외를 처리 할 수 ​​있습니다.

그게 전부가

+0

스마트하고 간단한 감사합니다. lot – geogeek

+2

그냥 호기심 -하지만 오류를 캡처하고 아무 것도하지 않는 것이 나쁜 습관입니까? 현재이 문제로 고심하고 있으며 오류가 처음에 발생하는 것을 막을 수 있는지 알 수 없습니다. – Jen

+0

** 데이터 오류 ** 관리에 대한 자습서를 찾고 있습니다. – sentenza

0

이 문제를 해결 DataGridView를 위해 "DataError"의 이벤트를 추가 한 다음

그냥 쓰려면 :)이 : e.Cancel = TRUE;

는 예컨대 :

private void dataGridView1_DataError(object sender, DataGridViewDataErrorEventArgs e) 
{ 
    e.Cancel = true; 
}   
관련 문제