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


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. Отключите FocusOnKeyboardInput после получения фокуса SearchBox . Для этого зарегистрируйте событие PrepareForFocusOnKeyboardInput и используйте обработчик событий, чтобы задать для FocusOnKeyboardInput значение false.
  2. Когда элемент SearchBox теряет фокус, задайте для focusOnKeyboardInput значение true. Для этого зарегистрируйтесь для события LostFocus и используйте обработчик событий, чтобы задать focusOnKeyboardInput значение true.

Если focusOnKeyboardInput имеет значение true, ввод с клавиатуры в текущем потоке перехватывается, а текстовые данные перенаправляются в SearchBox. Фокус будет получать только текстовый ввод . Нетекстовые клавиши, такие как стрелки или табуляции, не перенаправляются в SearchBox. Сочетания клавиш WIN/CTRL/ALT (за исключением ctrl-V для вставки) также не перенаправляются.

Чтобы сделать больше, чем просто задать фокус в SearchBox, например сделать элемент управления видимым, обработайте событие PrepareForFocusOnKeyboardInput .

Если пользователь устанавливает фокус на какое-то другое редактируемое текстовое поле, необходимо задать для FocusOnKeyboardInput значение false .

Дополнительные сведения о том, когда следует разрешить пользователям вводить текст, см. в статье Рекомендации и контрольный список для поиска.

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

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