WinForms: не удается заставить ValidateChildren вызвать событие Validating дочернего элемента управления - PullRequest
0 голосов
/ 09 июля 2010

В приложении Windows Form у меня есть форма с UserControl, которая содержит дочерний элемент управления.У меня есть обработчик события Validating для дочернего элемента управления.На родительском UserControl я вызываю метод ValidateChildren().Но обработчик события Validating дочернего элемента управления не запускается.Свойство CausesValidation имеет значение true как для родительского элемента UserControl, так и для дочернего элемента управления.Есть ли причина, по которой обработчик события Validating не будет работать?

Дочерний элемент управления - это пользовательский элемент управления, полученный из Panel.Он содержит два элемента управления RadioButton, для каждого из которых свойство CausesValidation имеет значение true.

1 Ответ

2 голосов
/ 09 июля 2010

Думаю, я понял это. Элемент управления не вызывал событие Validating, поскольку его нельзя было выбрать. Элемент управления Panel по умолчанию недоступен для выбора, а также элементы управления не получены из Panel (см. текст ссылки ). Поэтому в конструкторе UserControl я назвал SetStyle(ControlStyles.Selectable, true);. Теперь он вызывает событие Validating.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...