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"/>
Значение свойства
bool
True , если пользователь может выполнить поиск, введя в любом месте приложения; в противном случае — false. Значение по умолчанию — false.
Комментарии
Примечание
Если focusOnKeyboardInput имеет значение true, возникает проблема, из-за которую иногда создаются повторяющиеся символы в элементе управления SearchBox при использовании сенсорной клавиатуры. Эту проблему можно обойти, выполнив следующие действия.
- Отключите FocusOnKeyboardInput после получения фокуса SearchBox . Для этого зарегистрируйте событие PrepareForFocusOnKeyboardInput и используйте обработчик событий, чтобы задать для FocusOnKeyboardInput значение false.
- Когда элемент SearchBox теряет фокус, задайте для focusOnKeyboardInput значение true. Для этого зарегистрируйтесь для события LostFocus и используйте обработчик событий, чтобы задать focusOnKeyboardInput значение true.
Если focusOnKeyboardInput имеет значение true, ввод с клавиатуры в текущем потоке перехватывается, а текстовые данные перенаправляются в SearchBox. Фокус будет получать только текстовый ввод . Нетекстовые клавиши, такие как стрелки или табуляции, не перенаправляются в SearchBox. Сочетания клавиш WIN/CTRL/ALT (за исключением ctrl-V для вставки) также не перенаправляются.
Чтобы сделать больше, чем просто задать фокус в SearchBox, например сделать элемент управления видимым, обработайте событие PrepareForFocusOnKeyboardInput .
Если пользователь устанавливает фокус на какое-то другое редактируемое текстовое поле, необходимо задать для FocusOnKeyboardInput значение false .
Дополнительные сведения о том, когда следует разрешить пользователям вводить текст, см. в статье Рекомендации и контрольный список для поиска.