2009-03-19 3 views
0

Фон: У меня есть форма с «ясной формой» и кнопкой «отменить». Если у меня есть недопустимые данные в раскрывающемся списке и нажмите любую из этих кнопок, произойдет срабатывание проверяющего события выпадающего списка. Я добавил код для проверки, чтобы добиться успеха, если нажаты «clear» или «cancel».Проверка результатов события в случае потери кнопки Нажмите событие в Winforms

Задача: Я ожидаю, что следующее, что произойдет, это то, что будут срабатывать события нажатия кнопки. В случае кнопки «отменить» это делает. Но событие для кнопки «clear» не работает. Я не вижу никакой разницы между двумя кнопками/событиями. Что происходит и как это исправить?

ответ

2

Не уверен, что вас болит, ни одно событие Click должно запускаться при установке e.Cancel в обработчике событий Validating. Но есть лучший способ сделать это. Установите для свойства «CausesValidation» значение «False».

+0

TY, свойство CausesValidation было именно тем, что мне было нужно! Прошло более часа вчера, пробуя всякие глупые работы вокруг. Действительно ценю это. – Jeff

0

Я столкнулся с другим подобным сценарием. В поисках ответа я столкнулся с этим старым вопросом, который я задал месяцам агао! В этом случае события проверки переместили фокус с исходного поля, поэтому к тому моменту, когда событие кнопки было готово к стрельбе, это не удавалось. Закончилось решение проблемы путем явного вызова события нажатия кнопки из проверки.