次の方法で共有


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

イベントの種類

注釈

UI のコントロールに入力フォーカスがあるときにだけ、キーボード イベントが生成されます。 既定では、ビジュアル ツリーの最初のフォーカス可能な要素には、システムによってフォーカスが与えられます。 個々のコントロールは、ユーザーがレイアウト上でコントロールを直接クリックまたはタップするか、Tab キーを使ってコンテンツ領域内のタブ順に入ると、フォーカスを取得します。 Control.Focus を呼び出すことで、プログラムでコントロールにフォーカスを設定することもできます。

KeyDown はルーティング イベントです。 ルーティング イベントの概念の詳細については、「 イベントとルーティング イベントの概要」を参照してください。

KeyDown は KeyRoutedEventArgs イベント データを使用します。 ハンドラーに関するほとんどのシナリオで、最もよく使われる KeyRoutedEventArgs のプロパティは、Key です。場合によっては、KeyStatus も使われます。 KeyEventHandler メソッドを定義するためのコード例など、キーボード イベントの処理の詳細については、「キーボード操作」を参照してください。

キーボード イベントを処理するシナリオの 1 つは、アプリのアクセス キーまたはアクセラレータ キー、またはアプリ内のリージョンまたはコントロールをサポートすることです。 このシナリオの詳細については、「 キーボード アクセシビリティ」を参照してください。

特定のWindows ランタイム コントロールには、KeyDown 入力イベントのクラスベースの処理が含まれる場合があります。 その場合、コントロールには OnKeyDown メソッドのオーバーライドが含まれている可能性があります。 通常、これらのクラス ハンドラーは、そのコントロールとのキーボードベースのユーザー操作を可能にするキー押下のサブセットを処理することを目的としており、多くの場合、この操作ではキーボード アクセシビリティ機能がサポートされます。 キー押下がクラス ベースの処理によって処理される場合、キー押下は既に処理済みと見なされ、そのキーに対するそのコントロールのユーザー コード ハンドラーによる KeyDown イベントは発生しません。 通常、これはいくつかの専用キーのためだけに使用されます。 たとえば、 ButtonBase にはクラス処理があり、Space キーと Enter キーは Button を呼び出すためのキーボードと同等のものとして処理されます。 これにより、ボタンをタップしたり、マウスでクリックしたりするための組み込みのキーボードが提供され、UI とボタンをキーボードのみを使用するアクセシビリティ シナリオが可能になります。 ただし、Space または Enter 以外の他のキーでも、Button の KeyDown イベントと KeyUp イベントが発生 します。 イベントのクラスベースの処理のしくみの詳細については、「 イベントとルーティング イベントの概要」を参照してください。

KeyDown では、イベントのイベント データが Handled とマークされている場合でも、呼び出されるルートにイベント ハンドラーをアタッチする機能がサポートされています。 「 AddHandler」を参照してください。

適用対象

こちらもご覧ください