Добре дошли в серията Windows Phone 7.5 Mango App Development. В последния настойнически ние казваме как да прилагаме стил и теми към контролите, в този урок ще видим един начин за навигация между страниците и предаване на данни от страница на друга.
Зареждаме XAML страници в приложенията Silverlight точно както зареждаме HTML страници в уеб браузър. Както и в уебсайта, всеки уебсайт има свой собствен уникален URL адрес (Unified Resource Locator), например www.thewindowsclub.com. В приложение за Windows Phone 7.5 използваме бутон за управление на хиперлинк и използваме своето NavigateURI с URI (Unified Resource Identifier) на XAML страницата, която искате да заредите. Затова нека да започнем с един пример.
Създайте нов проект с уникално име като "NavigationDemo". След това щракнете с десния бутон на мишката върху името на проекта в Explorer Explorer и изберете Add и след това New Item. В прозореца "Добавяне на нова тема" изберете "Портфолио на Windows Phone", дайте име като Page1.xaml и след това кликнете върху бутона Добави в долната част. Това ще създаде нова страница, показана в отделен раздел в основната област на проектиране. Само за яснота променете заглавието на страницата на новата страница на "Нова страница", като промените свойството Text на заглавната страница на 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}", НавигацияContext.QueryString ["id"]);
Така че в този ред на кода използваме NavigationContext, който ни дава достъп до URL адреса, по-конкретно в querystring. Посочваме елемента, за който искаме да получим достъп в квадратните скоби.
Преди да стартираме приложението, ще променим свойството NavigateUri на бутона за хипервръзка до следното
/NavigationDemo;component/Views/Page1.xaml?id=1
Също така ще плъзгаме и пускаме друг бутон за хипервръзки в MainPage.xaml и настройваме своето navigateUri на следното
/NavigationDemo;component/Views/Page1.xaml?id=2
Сега, когато стартирате приложението и кликнете върху бутона за хипервръзка в емулатора, ще можем да видим стойността на id, предаван от MainPage.xaml. Това е лесното навигация между страниците в приложението Windows Phone 7. Продължете да го практикувате, докато не го направите правилно. Сега можете да научите как да работите с лентата за приложения.