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


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 по последовательности табуляции в пределах области размещения содержимого. Вы также можете сосредоточить элементы управления программными средствами, вызвав Control.Focus.

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

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

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

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

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

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

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