Navigáció

A Windows 8-as Metro appoknál nem igazán értelmezett dolog az ablak fogalma, a képernyő 100%-át az app fedi le és minden egyes pixel felett ő uralkodik. Ha mégis úgy van, hogy egy nézet nem elegendő (és általában úgy van), akkor a böngészőhöz hasonló navigációs lehetőségek lesznek hasznunkra.

Hierarchia szempontjából egy app tipikusan úgy fog felépülni, hogy van egy Frame és azon belül navigálgatunk az app különböző oldalai (Page) között. Ez az alap sablon a Visual Studio 11-ben. A másik tipikus felépítés az lehet, hogy a gyökérelem már eleve egy oldal és azon belül hozunk létre kereteket (akár többet is) amiken belül navigálgatjuk az app nézeteit. Ilyenkor értelemszerűen a főoldal egy állandó keretként ott tud lenni mindenhol.

Ebből a kis példából tehát megtanultuk, hogy a navigáció két fő eleme a Frame és a Page. A Frame fogja a navigáció keretét adni, tekinthetünk erre, mint böngészőre, és a Page-ek pedig az oldalak, amik között a Frame-ben navigálni tudunk.

A Frame oldaláról a navigáció lényegében kimerül a Navigate() metódusban ami paraméterként annak az oldalnak a típusát várja ahova navigálni szeretnénk és opcionálisan egy tetszőleges objektumot, melyet paraméterként adunk át a navigációban, illetve a Frame SourcePageType tulajdonságában, aminek a beállításával lényegében ugyanott vagyunk, mintha a Navigate() metódust használtuk volna extra paraméterek nélkül.

A Page oldaláról pedig két (három) fontos eseményünk (eseménykezelőnk) van. Az egyik mikor ránavigálunk az adott oldalra (OnNavigatedTo), a másik pedig, mikor elnavigálunk az oldalról (OnNavigatingFrom és OnNavigatedFrom).
Előbbiben van lehetőségünk az argumentumból kiolvasni az esetlegesen átadott paramétert a Paramter tulajdonságon keresztül, illetve a navigáció fajtáját a NavigationMode tulajdonságon keresztül, mely lehet Back, Forward, New, Refresh.
Utóbbiban (Navigating) pedig lehetőségünk van megszakítani a navigációt az argumentumban lévő Cancel tulajdonság true-ra állításával. Itt is természetesen elérhető az indított navigáció típusa (NavigationMode), illeteve az oldal típusa amire navigálunk a SourcePageType tulajdonságon keresztül.

About these ads

MINDEN VÉLEMÉNY SZÁMÍT!

Adatok megadása vagy bejelentkezés valamelyik ikonnal:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Módosítás )

Twitter kép

You are commenting using your Twitter account. Log Out / Módosítás )

Facebook kép

You are commenting using your Facebook account. Log Out / Módosítás )

Kapcsolódás: %s

Követés

Értesítést küldünk minden új bejegyzésről a megadott e-mail címre.

%d bloggers like this: