UIElement.KeyDown Событие
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Происходит при нажатии клавиши клавиатуры, когда элемент UIElement имеет фокус.
public:
virtual event KeyEventHandler ^ KeyDown;
// Register
event_token KeyDown(KeyEventHandler const& handler) const;
// Revoke with event_token
void KeyDown(event_token const* cookie) const;
// Revoke with event_revoker
UIElement::KeyDown_revoker KeyDown(auto_revoke_t, KeyEventHandler const& handler) const;
public event KeyEventHandler KeyDown;
function onKeyDown(eventArgs) { /* Your code */ }
uIElement.addEventListener("keydown", onKeyDown);
uIElement.removeEventListener("keydown", onKeyDown);
- or -
uIElement.onkeydown = onKeyDown;
Public Custom Event KeyDown As KeyEventHandler
<uiElement KeyDown="eventhandler"/>
Тип события
Комментарии
Элементы управления в вашем пользовательском интерфейсе генерируют события клавиатуры, только когда у них есть фокус ввода. По умолчанию первый фокусируемый элемент в визуальном дереве получает фокус системой. Отдельный элемент управления получает фокус, когда пользователь щелкает или нажимает непосредственно на этот элемент управления в макете или использует клавишу TAB для перехода в последовательность вкладок в области содержимого. Вы также можете программно сосредоточиться на элементах управления, вызвав UIElement.Focus(Microsoft. Пользовательского интерфейса. Xaml.FocusState).
KeyDown — это перенаправленное событие. Дополнительные сведения о концепции перенаправленного события см. в разделе "События" и обзор перенаправленных событий.
KeyDown использует данные событий KeyRoutedEventArgs . Наиболее релевантными свойствами большинства сценариев обработчика KeyRoutedEventArgs являются Ключ и, возможно, KeyStatus. Дополнительные сведения об обработке событий клавиатуры, включая пример кода для определения метода KeyEventHandler , см. в разделе "Взаимодействие с клавиатурой".
Одним из сценариев обработки событий клавиатуры является поддержка клавиш доступа или клавиш акселератора для приложения, региона или элемента управления в приложении. Дополнительные сведения об этом сценарии см. в разделе "Специальные возможности клавиатуры".
Определенные элементы управления среда выполнения Windows могут обрабатывать события ввода KeyDown на основе классов. В этом случае элемент управления, вероятно, имеет переопределение для метода OnKeyDown. Как правило, эти обработчики классов предназначены для обработки подмножества нажатий клавиш, которые обеспечивают взаимодействие пользователя на основе клавиатуры с этим элементом управления. Часто это взаимодействие поддерживает функцию специальных возможностей клавиатуры. Если нажатие клавиши обрабатывается обработкой на основе классов, то нажатие клавиши считается уже обработанным, и событие KeyDown не вызывается для обработки любыми обработчиками пользовательского кода в этом элементе управления специально для этого ключа. Обычно это только для нескольких выделенных ключей. Например, ButtonBase обрабатывает класс, чтобы клавиша ПРОБЕЛ и клавишу ВВОД обрабатывались в качестве эквивалентов клавиатуры для вызова кнопки. Это обеспечивает встроенный эквивалент клавиатуры для нажатия кнопки или нажатия кнопки с помощью мыши и включает сценарий специальных возможностей использования пользовательского интерфейса и кнопки только с помощью клавиатуры. Но любые другие ключи, отличные от пробела или ВВОД , по-прежнему будут запускать событие KeyDown и KeyUp для Button. Дополнительные сведения о том, как работает обработка событий на основе классов, см. в разделе "События" и обзор перенаправленных событий.
KeyDown поддерживает возможность подключения обработчиков событий к маршруту, который будет вызываться, даже если данные события для события помечены как Handled. См. раздел AddHandler.