次の方法で共有


SearchBox.FocusOnKeyboardInput プロパティ

定義

アプリ内の任意の場所に入力してユーザーが検索できるかどうかを決定する値を取得または設定します。

public:
 property bool FocusOnKeyboardInput { bool get(); void set(bool value); };
bool FocusOnKeyboardInput();

void FocusOnKeyboardInput(bool value);
public bool FocusOnKeyboardInput { get; set; }
var boolean = searchBox.focusOnKeyboardInput;
searchBox.focusOnKeyboardInput = boolean;
Public Property FocusOnKeyboardInput As Boolean
<SearchBox FocusOnKeyboardInput="bool"/>

プロパティ値

Boolean

bool

ユーザー がアプリ内の任意の場所を入力して検索できる場合は true。それ以外の場合は false。 既定値は false です。

注釈

注意

FocusOnKeyboardInput を true に設定すると、タッチ キーボードを使用するときに SearchBox コントロールに重複する文字が作成されることがあります。 次の手順に従って、この問題を回避できます。

  1. SearchBox がフォーカスを受け取った後、FocusOnKeyboardInput を無効にします。 これを行うには、 PrepareForFocusOnKeyboardInput イベントに登録し、イベント ハンドラーを使用して FocusOnKeyboardInput を false に設定 します
  2. SearchBox でフォーカスが失われるとき、FocusOnKeyboardInput を true に戻します。 これを行うには、 LostFocus イベントに登録し、イベント ハンドラーを使用して FocusOnKeyboardInput を true に戻 します

FocusOnKeyboardInput が true の場合、現在のスレッドのキーボード入力がインターセプトされ、テキスト入力が SearchBox にリダイレクトされます。 テキスト入力のみが SearchBox にフォーカスを受け取ります。 矢印や Tab などのテキスト以外のキーは、 SearchBox にリダイレクトされません。 WIN/Ctrl/Alt キーの組み合わせ (貼り付け用の Ctrl+ V を除く) もリダイレクトされません。

コントロールを表示するなど、 単に SearchBox にフォーカスを設定する以外の操作を行うには、 PrepareForFocusOnKeyboardInput イベントを処理します。

ユーザーが他の編集可能なテキスト フィールドにフォーカスを設定する場合は、FocusOnKeyboardInput を false に設定する必要があります。

ユーザーが検索を入力できるようにするタイミングの詳細については、「検索 のガイドラインとチェックリスト」を参照してください。

適用対象

こちらもご覧ください