//Логика обработки поискового запроса
pageTitle.Text = "Search result for \"" + queryText + "\":";
protected override void OnNavigatedTo(NavigationEventArgs e)
В этом методе мы перенаправляем пользователя на страницу SearchPage где в качестве параметра указан поисковой запрос. Надо учитывать, что если приложение не было запущено, приложение запускается через метод OnSearhActivated. В связи с этим текущий фрейм может быть еще не создан. Проверка на null осуществляется для инициализации фрейма при первом запуске приложения. На странице SearchPage теперь мы можем отобразить результаты поиска, получив поисковой запрос из переданного параметра:
frame.Navigate(typeof(SearchPage), args.QueryText);
protected override void OnSearchActivated(SearchActivatedEventArgs args)
Поиск внутри приложений одна из новых, наиболее важных и интересных функций Windows 8. Поиск предоставляет возможность искать не только файлы и документы на устройстве, но также позволяет искать внутри установленных приложений. В этой статье рассматривается: 1. Интеграция поиска в метро приложение 2. Контекстные подсказки (suggestions). 3. Обработка запроса по мере ввода данных. 4. Неосторожное использование контракта поиска (обычные ошибки интеграции). 1. Интеграция поиска в метро приложение По умолчанию приложения не поддерживают контракт поиска. В этой статье рассмотрим, как можно добавить поиск внутри приложения. Самым простым способом добавления поддержки контракта поиска является использование готового шаблона в студии: В VS2012 есть встроенный шаблон SearchContractкоторый добавляет соответствующую запись в манифест (если этого не было сделано), добавляет запись в app.xaml.cs(переопределение метода OnSearchActivated если этого еще не было сделано), и добавляет страницу принимающий поисковой запрос с минимальной логикой обработки. Мы не будем детально рассматривать использования этого шаблона и пошагово рассмотрим добавление поддержки контракта поиска: В первую очередь в манифесте приложения (файл Package.appxmanifest) нам необходимо указать, что наше приложение поддерживает контракт поиска. Для этого открыв этот манифест в студии, во вкладке “declarations” добавляем контракт поиска. Далее в классе приложения “app.xaml.cs” мы можем переопределить алгоритм активации приложения через контракт поиска и указать нужную нам логику. Для простоты сделаем, что бы у нас всегда открывалась отдельная страница (SearchPage.xaml) при активации по контракту поиска.
Шериев Ахмед | Блог .NET разработчика
Комментариев нет:
Отправить комментарий