2010-07-08 3 views
0

Windows Form 응용 프로그램에서 하위 컨트롤이 포함 된 UserControl이있는 Form이 있습니다. 하위 컨트롤의 Validating 이벤트에 대한 이벤트 처리기가 있습니다. 부모 UserControl 나는 ValidateChildren() 메서드를 호출합니다. 그러나 자식 컨트롤의 유효성 검사 이벤트에 대한 이벤트 처리기가 실행되지 않습니다. CausesValidation 속성은 부모 UserControl 및 자식 컨트롤에서 모두 true로 설정됩니다. Validating 이벤트 처리기가 실행되지 않는 이유가 있습니까?WinForms : ValidateChildren을 가져올 수 없습니다. 하위 컨트롤의 유효성 검사 이벤트

자식 컨트롤은 Panel에서 파생 된 사용자 지정 컨트롤입니다. 여기에는 두 개의 RadioButton 컨트롤이 포함되어 있으며 둘 다 CausesValidation 속성이 true로 설정되어 있습니다.

+0

아니요. 파일 공유 서비스에서이 문제점을 보여주는 샘플 프로젝트를 게시해야합니다. –

답변

2

나는 그것을 이해했다고 생각합니다. 컨트롤은 선택 가능하지 않으므로 Validating 이벤트를 발생시키지 않았습니다. Panel 컨트롤은 기본적으로 선택할 수 없으며 Panel에서 파생 된 컨트롤입니다 (link text 참조). 그래서 UserControl의 생성자에서 나는 SetStyle(ControlStyles.Selectable, true);을 호출했습니다. 이제 Validating 이벤트가 발생합니다.

관련 문제