Compartilhar via


UIElement.KeyDown Evento

Definição

Ocorre quando uma tecla de teclado é pressionada enquanto o UIElement tem foco.

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"/>

Tipo de evento

Comentários

Os controles em sua interface do usuário geram eventos de teclado apenas quando possuem foco de entrada. Por padrão, o primeiro elemento focalizável na árvore visual recebe o foco pelo sistema. Um controle individual ganha foco quando o usuário clica ou toca diretamente nesse controle no layout, ou utiliza a tecla Tab para avançar na sequência de tabulação dentro da área de conteúdo. Você também pode concentrar os controles programaticamente chamando Control.Focus.

KeyDown é um evento roteado. Para obter mais informações sobre o conceito de evento roteado, consulte Visão geral de eventos e eventos roteado.

KeyDown usa dados de evento KeyRoutedEventArgs . As propriedades mais relevantes de KeyRoutedEventArgs para a maioria dos cenários de manipulação são Key e possivelmente KeyStatus. Para obter mais informações sobre como lidar com eventos de teclado, incluindo código de exemplo para definir um método KeyEventHandler , consulte Interações de teclado.

Um cenário para manipular eventos de teclado é dar suporte a teclas de acesso ou teclas de acelerador para um aplicativo, ou a uma região ou controle dentro de um aplicativo. Para obter mais informações sobre esse cenário, consulte Acessibilidade do teclado.

Controles de Windows Runtime específicos podem ter manipulação baseada em classe para o evento de entrada KeyDown. Nesse caso, o controle provavelmente tem uma substituição para o método OnKeyDown. Normalmente, esses manipuladores de classe destinam-se a processar um subconjunto de pressionamentos de teclas que permitem uma interação do usuário baseada em teclado com esse controle e, muitas vezes, essa interação dá suporte a um recurso de acessibilidade do teclado. Se um pressionamento de tecla for tratado pelo tratamento baseado em classe, a tecla press será considerada já tratada e o evento KeyDown não será gerado para tratamento por nenhum manipulador de código de usuário nesse controle especificamente para essa tecla. Normalmente, isso é apenas para algumas chaves dedicadas. Por exemplo, ButtonBase tem manipulação de classe para que a tecla Space e a tecla Enter sejam tratadas como equivalentes de teclado para invocar o Botão. Isso fornece um equivalente de teclado interno para tocar no botão ou clicar nele com um mouse e habilita o cenário de acessibilidade de usar a interface do usuário e o botão usando apenas um teclado. Mas qualquer outra tecla que não seja Espaço ou Enter ainda disparará um evento KeyDown e KeyUp para um Botão. Para obter mais informações sobre como funciona o tratamento baseado em classe para eventos, consulte Visão geral de eventos e eventos roteado.

O KeyDown dá suporte à capacidade de anexar manipuladores de eventos à rota que será invocada mesmo se os dados do evento estiverem marcados como Manipulados. Consulte AddHandler.

Aplica-se a

Confira também