Как я могу определить, когда кнопка «Поиск» нажимается, когда я устанавливаю InputScope для поиска?
-
10-10-2019 - |
Вопрос
Для Windows Phone. Как я могу определить, когда кнопка «Поиск» нажимается, когда я устанавливаю inputscope для поиска на текстовом поле? Есть событие?
Решение
Когда InputScope
установлен на «поиск», кнопка «Поиск» - это просто кнопка ресторана «Enter». Итак, предполагая:
<TextBox InputScope="Search" KeyDown="SearchBox_KeyDown" />
Кнопка «Поиск» нажимается (на SIP) может быть обнаружена с помощью:
private void SearchBox_KeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.Enter)
{
// Do search...
}
}
Другие советы
В дополнение к тому, что Мэтт ответил (правильно) ответил, если вы обрабатываете e.platformkeycode == 0x0a (как показано ниже), вы также можете ответить на клавишу Enter, нажимаему на клавиатуре при запуске в эмуляторе без SIP.
if ((Key.Enter == e.Key) || (e.PlatformKeyCode == 0x0A))
{
// Do search...
}
Вы имеете в виду кнопку поиска аппаратного обеспечения? Это не выставлено. Подобный вопрос
Для приложений Windows Phone 8.1 (не Silverlight) вы можете использовать VirtualKey
if (e.Key == Windows.System.VirtualKey.Enter)
{
//Do Something.
}