Поделиться через


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.UI.Xaml.FocusState).

KeyDown — это перенаправленное событие. Дополнительные сведения о концепции перенаправленных событий см. в статье Общие сведения о событиях и перенаправленных событиях.

KeyDown использует данные события KeyRoutedEventArgs . Наиболее релевантными свойствами KeyRoutedEventArgs для большинства сценариев обработчика являются Key и, возможно, KeyStatus. Дополнительные сведения об обработке событий клавиатуры, включая пример кода для определения метода KeyEventHandler , см. в разделе Взаимодействие с помощью клавиатуры.

Одним из сценариев обработки событий клавиатуры является поддержка клавиш доступа или сочетаний клавиш для приложения, региона или элемента управления в приложении. Дополнительные сведения об этом сценарии см. в статье Специальные возможности клавиатуры.

Определенные элементы управления среда выполнения Windows могут обрабатываться на основе классов для входного события KeyDown. В этом случае элемент управления, вероятно, имеет переопределение для метода OnKeyDown. Обычно эти обработчики классов предназначены для обработки подмножества нажатий клавиш, которые обеспечивают взаимодействие пользователя с этим элементом управления на основе клавиатуры. Часто это взаимодействие поддерживает специальные возможности клавиатуры. Если нажатие клавиши обрабатывается с помощью обработки на основе класса, то нажатие клавиши считается уже обработанным, и событие KeyDown не вызывается для обработки обработчиками пользовательского кода в этом элементе управления специально для этого ключа. Как правило, это всего лишь для нескольких выделенных ключей. Например, ButtonBase имеет обработку классов, чтобы клавиши ПРОБЕЛ и ВВОД обрабатывались как эквиваленты клавиатуры для вызова кнопки. Он предоставляет встроенный эквивалент клавиатуры для нажатия кнопки или нажатия на нее с помощью мыши и позволяет использовать специальные возможности для использования пользовательского интерфейса и кнопки только с помощью клавиатуры. Но любые другие ключи, кроме ПРОБЕЛ или ВВОД , по-прежнему будут вызывать события KeyDown и KeyUp для Button. Дополнительные сведения о том, как работает обработка событий на основе классов, см. в статье Обзор событий и перенаправленных событий.

KeyDown поддерживает возможность подключения обработчиков событий к маршруту, который будет вызываться, даже если данные события помечены как Handled. См . раздел AddHandler.

Применяется к

См. также раздел