Добро пожаловать в серию приложений для Windows Phone 7.5 Mango. В последнем уроке мы расскажем, как применять стиль и темы для элементов управления, в этом уроке мы увидим один из способов навигации между страницами и передачи данных со страницы на другую.
Мы загружаем страницы XAML в приложениях Silverlight так же, как загружаем HTML-страницы в веб-браузере. Как и на веб-сайте, на каждом веб-сайте есть свой уникальный URL-адрес (Unified Resource Locator), например www.thewindowsclub.com. В приложении Windows Phone 7.5 мы используем элемент управления Button с гиперссылкой и используем его свойство NavigateURI с URI (Унифицированный идентификатор ресурса) страницы XAML, которую вы хотите загрузить. Итак, давайте начнем с примера.
Создайте новый проект с уникальным именем «NavigationDemo». Затем щелкните правой кнопкой мыши имя проекта в проводнике решений и выберите «Добавить», а затем «Новый элемент». В окне «Добавить новый элемент» выберите «Страница« Портрет телефонной книги Windows »», дайте ему имя, например Page1.xaml, а затем нажмите кнопку «Добавить» внизу. Это создаст новую страницу, показанную на отдельной вкладке в основной области дизайна. Просто для ясности измените заголовок страницы новой страницы на «Новая страница», изменив свойство «Текст» TextBlock. Далее на вкладке MainPage.xaml перетащите кнопку гиперссылки в области дизайна. Теперь измените свойство NavigateUri в окне «Свойства» для кнопки «Гиперссылка». Вставьте следующую строку
/NavigationDemo;component/Views/Page1.xaml
Теперь запустите приложение и нажмите кнопку гиперссылки, отображаемую в эмуляторе. Вы будете перемещены в Page1.xaml из MainPage.xaml.
Итак, теперь, в продолжение нашего проекта, мы перетаскиваем TextBlock на странице Page1.xaml. Очистите свойство TextBlock.Text и вставьте следующий код C # в событие PhoneApplicationPage_Loaded.
textBlock1.Text = String.Format ("Значение: {0}", NavigationContext.QueryString ["id"]);
Таким образом, в этой строке кода мы используем NavigationContext, который дает нам доступ к URL-адресу, в частности, к запросам. Мы указываем элемент, который мы хотим получить в квадратных скобках.
Перед запуском приложения мы изменим свойство NavigateUri кнопки гиперссылки на следующее
/NavigationDemo;component/Views/Page1.xaml?id=1
Мы также перетаскиваем другую кнопку гиперссылки в MainPage.xaml и устанавливаем ее свойство navigateUri следующим образом:
/NavigationDemo;component/Views/Page1.xaml?id=2
Теперь, когда вы запустите приложение и нажмите кнопку гиперссылки в эмуляторе, мы сможем увидеть значение идентификатора, переданного из MainPage.xaml. Так легко перемещаться между страницами в приложении Windows Phone 7. Продолжайте практиковать это, пока не получите это правильно. Теперь давайте узнаем о работе с панелью приложений.