UIElement.GotFocus イベント

定義

UIElement がフォーカスを受け取ったときに発生します。 このイベントは非同期的に発生するため、バブルが完了する前にフォーカスを再び移動できます。

// Register
event_token GotFocus(RoutedEventHandler const& handler) const;

// Revoke with event_token
void GotFocus(event_token const* cookie) const;

// Revoke with event_revoker
UIElement::GotFocus_revoker GotFocus(auto_revoke_t, RoutedEventHandler const& handler) const;
public event RoutedEventHandler GotFocus;
function onGotFocus(eventArgs) { /* Your code */ }
uIElement.addEventListener("gotfocus", onGotFocus);
uIElement.removeEventListener("gotfocus", onGotFocus);
- or -
uIElement.ongotfocus = onGotFocus;
Public Custom Event GotFocus As RoutedEventHandler 
<uiElement GotFocus="eventhandler"/>

イベントの種類

注釈

可能な限り、FocusManager イベントではなく UIElement フォーカス ルーティング イベントを使用することをお勧めします。

一度に 1 つの UI 要素にのみフォーカスを設定できます。

コントロールは、別のコントロールがフォーカスを失ったとき、アプリケーション ビューが変更されたとき、ユーザーがアプリケーションを切り替えた場合、またはユーザーがシステムと対話して、アプリケーションがフォアグラウンドでなくなったときにフォーカスを取得できます。

LostFocus は、 GotFocus前に発生します。

PanelGridView などのコンテナーでコントロール合成または UI 合成と処理GotFocusを使用している場合は、イベント データの OriginalSource を確認して、コンポジション内のどの要素がフォーカスを受け取ったかを判断します。

GotFocus イベントには特殊なイベント データがないため、UIElement.FocusState プロパティを調べて、要素がフォーカスを取得する原因となったユーザー コードかアプリ コードかを判断できます。

private void panel_GotFocus(object sender, RoutedEventArgs e)
{
    UIElement uie = e.OriginalSource as UIElement;
    FocusState fc = uie.FocusState;
}

キーボード フォーカスはキーボード イベント処理に特に関連します。KeyUp および KeyDown キー イベントのソースにできるのは、現在キーボードに焦点を当てた UIElement のみであるためです。 アプリケーションは UIElement.Focus(Microsoft を呼び出す場合があります。UI。Xaml.FocusState) を初期化アクションとして使用して、アプリ全体のキー イベントを使用してアクセス キーまたはアクセラレータ キーを検出できるようにします。 詳細については、「 キーボード操作」を参照してください。

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

特定のWindows ランタイム コントロールには、GotFocus イベントに対するクラスベースの処理が含まれる場合があります。 その場合、コントロールには OnGotFocus メソッドのオーバーライドがある可能性があります。 通常、イベントはクラス ハンドラーによって処理済みとしてマークされ、GotFocus イベントは、そのコントロールのユーザー コード ハンドラーによる処理のために発生しません。 コントロールは、フォーカスの四角形を表示する表示状態プロパティを読み込むためにイベントを処理する場合があります。

コントロールのフォーカス四角形は、現在フォーカスされている要素を識別し、ユーザーがアプリケーション UI のタブ シーケンス内のどこにいるかを示すことによって、アクセシビリティを支援する重要なビジュアル コンポーネントです。 場合によっては、フォーカス アクションの FocusState は、表示されているフォーカス インジケーターを表示するかどうかに関連します。

イベントのクラス ベースの処理のしくみの詳細については、「 イベントとルーティング イベントの概要」を参照してください。 タブ シーケンスとアクセシビリティの詳細については、「 キーボード アクセシビリティ」を参照してください。

適用対象

こちらもご覧ください