2011-09-16 5 views
0

TextBox를 기반으로하는 DataGridView에 대한 사용자 지정 편집 컨트롤을 만들고 있습니다. 이 사실은 (사실 OnValidating 이벤트를 재정의 할 수는 있지만) e.Cancel을 true로 설정해도 사용자가 셀을 나가는 것을 막지는 않는다는 점을 제외하고는 정상적으로 작동합니다.DataGridView에서 사용자 지정 편집 컨트롤 유효성 검사

사용자가 잘못된 데이터를 입력하면 어떻게하면 편집 컨트롤을 유지할 수 있습니까?

바운드 열에 유효하지 않은 데이터를 입력 할 때 Dataerror 이벤트를 구현해야하고 데이터가 유효하지 않은 상태에서 사용자가 셀을 벗어날 수 없기 때문에 가능해야합니다.

답변

1

나는 그것을 해결하기 위해 EditingControl의 OnValidating 이벤트를 무시하여 base.OnValidating을 건너 뛰었습니다. Grid의 CellValidating에 코드를 추가하여 기본 Editing Control의 사용자 정의 Validation 메소드를 호출하고 유효성 검사가 실패하면 e.Cancel = true로 설정합니다.

관련 문제