Как узнать, когда нажата кнопка «поиск», когда я устанавливаю InputScope для поиска? - PullRequest
2 голосов
/ 12 января 2011

для Windows Phone. Как узнать, когда нажата кнопка «поиск», когда я устанавливаю InputScope для поиска в TextBox? Есть ли событие?

Ответы [ 4 ]

12 голосов
/ 12 января 2011

Когда для InputScope установлено значение «Поиск», кнопка «поиск» является просто рестайлинговой кнопкой «ввод».Итак, при условии:

<TextBox InputScope="Search" KeyDown="SearchBox_KeyDown" />

нажатие кнопки «поиск» (на SIP) может быть обнаружено с помощью:

private void SearchBox_KeyDown(object sender, KeyEventArgs e)
{
    if (e.Key == Key.Enter)
    {
        // Do search...
    }
}
4 голосов
/ 12 января 2011

В дополнение к тому, что Мэтт (правильно) ответил, если вы обрабатываете e.PlatformKeyCode == 0x0A (как показано ниже), вы также можете ответить на нажатие клавиши Enter на клавиатуре хоста при запуске в эмуляторе без SIP.

if ((Key.Enter == e.Key) || (e.PlatformKeyCode == 0x0A))
{
    // Do search...
}
0 голосов
/ 03 июля 2015

Для приложений Windows Phone 8.1 (не Silverlight) вы можете использовать VirtualKey

if (e.Key == Windows.System.VirtualKey.Enter)
{
    //Do Something.
}
0 голосов
/ 12 января 2011

Вы имеете в виду аппаратную кнопку поиска? Это не разоблачено. Подобный вопрос

...