ВУЗ:
Составители:
Рубрика:
126
ня – Click. Между тем, флагу Handled присваивается значение true,
вследствие чего запрещается дальнейшее продвижение события
MouseUp.
5.3.1. Обработка заблокированного события
Отметим, что можно получать события, которые отмечены как
обработанные. Вместо того чтобы присоединять обработчик события
посредством XAML, необходимо использовать для этой цели рас-
смотренный ранее метод AddHandler(). Этот метод предлагает пере-
грузку, которая принимает булевское значение в третьем параметре.
Если этим значением будет true, событие будет получено, даже если
для него был установлен флаг Handled:
cmdClear.AddHander(UIElement.MouseUpEvent,
newMouseButtonEventHandler(cmdClear_MouseUp),true);
Это очень хороший вариант решения. Кнопка предназначена для
блокирования события MouseUp по очень простой причине: чтобы
избежать возникновения конфликта. В конце концов, в Windows при-
нято, что нажать кнопку с помощью клавиатуры можно несколькими
способами. Если будет допущена ошибка, обработав событие
MouseUp в элементе Button вместо события Click, код отреагирует
только на щелчки мышью, а не на эквивалентные действия со сторо-
ны клавиатуры.
5.4. Прикрепляемые события
Пример декоративной метки является довольно простым приме-
ром поднятия события, поскольку все элементы поддерживают собы-
тие MouseUp. Тем не менее, многие элементы управления обладают
собственными специальными событиями. Кнопка является одним из
таких примеров – она добавляет событие Click, которое не определено
ни в одном базовом классе.
Предположим, что в элемент StackPanel помещается набор кно-
пок. Необходимо обработать все щелчки накнопке в одном обработ-
Страницы
- « первая
- ‹ предыдущая
- …
- 124
- 125
- 126
- 127
- 128
- …
- следующая ›
- последняя »