I denne veiledningen vil jeg lære deg om hendelsesmodellen til Windows Phone. Enda viktigere, vil vi lære om navigering og hvordan vi kan legge den til i et program for å tillate brukere å navigere mellom sider i en Windows Phone-applikasjon.
Hendelser i Windows Phone er bare handlinger som utløses etter at en bestemt betingelse er oppfylt. Denne handlingen er vanligvis initiert av brukerinteraksjon. Et godt eksempel på en hendelse er at brukeren trykker på en knapp i et Windows Phone-program. Brukeren vil normalt forvente at noe skal skje etter at du har trykket på en knapp. Ikke sant?
Kontroller kan ha mange hendelser knyttet til dem. På Windows Phone kan vi spesifisere en kodeblokk som skal utføres når en bestemt hendelse oppstår. Denne prosessen kalles hendelseshåndtering. Vi kan også lage egendefinerte hendelser, men det ligger utenfor omfanget av denne opplæringen. I stedet vil vi utforske noen av de innebygde hendelsene som noen Windows Phone-kontroller svarer på.
Hendelsehåndtering er ganske enkelt på Windows Phone. Vi har til og med mulighet til å definere selvbehandlere i XAML, lik hvordan vi definerer egenskaper. La oss se hvordan dette virker.
Start med å lage et nytt Windows Phone C # -prosjekt som vi har gjort i de tidligere opplæringsprogrammene. I ditt nye prosjekt drar du a Knapp kontroll fra ToolBox på tomt mellomrom i Visual Studio-designvisningen. Du bør ha noe som ser ut som det jeg har under.
For å demonstrere hvordan hendelser fungerer, skal vi få vår søknadsskjerm enkel Hei Verden popup melding når brukeren tapper knappen vi nettopp lagt til. En knappekontroll har a Klikk arrangement, som vi kan abonnere på og håndtere.
For å se hendelsene en kontroll har, velg kontrollen i designvisningen og gå til vinduet Visual Studio-egenskaper nederst til høyre. Klikk på hendelseknappen øverst til høyre i vinduet for å vise kontrollens hendelser.
Du bør se en liste over hendelser for den valgte kontrollen. Disse hendelsene er de innebygde hendelsene til den valgte kontrollen. I tekstfeltet til høyre for hver hendelse kan vi spesifisere navnet på en metode som påberopes når hendelsen oppstår. Den metoden er hendelseshandleren.
Med andre ord, hendelse handler er påkalt når hendelsen oppstår. Arrangementet som interesserer oss på dette tidspunktet er Klikk begivenhet. Dobbeltklikk tekstfeltet til høyre for hendelsesnavnet. Dette skal automatisk ta deg med til MainPage.cs
klasse som er kombinert med vår MainPage.xaml
side. Du bør også se en automatisk generert metode, som representerer hendelseshandleren, oppkalt Button_Click
eller noe lignende.
Husk at for hver XAML-side vi oppretter i Windows Phone er koblet til en C # -side som inneholder koden for kontrollene som er opprettet på XAML-siden. Denne C # -koden blir vanligvis referert til som kode bak.
Nå, la oss gå videre og implementere koden for å vise en melding som sier "Hello World". Legg til følgende kodestykke til Button_Click
metode som vist nedenfor.
privat tomt Button_Click (objekt sender, RoutedEventArgs e) MessageBox.Show ("Hello World");
Dette er alt vi trenger å gjøre for å implementere klikkhendelsehandleren for vår knapp. Før vi tester vår søknad, la meg forklare hva kodenavsnittet ovenfor gjør. De Meldingsboks
klassen er en del av .NET-biblioteket og lar oss vise en popup-melding. Ved å ringe Vise fram
metode på Meldingsboks
klasse og passerer i en streng, "Hei Verden"
, en popup vises til brukeren. Kjør programmet og trykk på knappen for å se resultatet av arbeidet vårt.
Det var lett, ikke sant? Hendelser er en integrert del av en Windows Phone-applikasjon, og du vil finne deg selv å bruke dem ofte når du utvikler Windows Phone-applikasjoner.
Nå som vi vet om hendelser og hendelseshåndtering, er det på tide å lære om et annet viktig aspekt av Windows Phone, navigering. De fleste Windows Phone-applikasjoner har mer enn én side, og vi må implementere en måte å navigere mellom disse sidene.
Windows Phone tar en veldig enkel tilnærming til navigering, slik at vi kan navigere fra en side til en annen med svært lite arbeid. Måten navigasjonen fungerer på Windows Phone ligner på samme måte som du navigerer på websider. Vi benytter oss av a URI eller Universell ressursidentifikator,som er veldig lik en nettadressei webutvikling. Med URIer kan du til og med passere parametere, akkurat som du kan på nettet. Vi vil ikke dekke dette aspektet av navigasjon i denne opplæringen skjønt.
La oss utforske navigasjonen ved å utvide vårt nåværende program. Vi må først opprette en ny side som vi kan navigere på. Høyreklikk prosjektets navn i Solution Explorer og velg Legg til> Legg til element fra menyen. Opprett en side som heter Page1.xaml.
Legg til en TextBlock styretil den nye siden og sett teksten til "Dette er en ny side" ved å endre Tekst
eiendom.
Målet er å navigere fra første side, MainPage.xaml, til den nye siden, Page1.xaml. For å oppnå dette må vi redigere hendelsesbehandleren på knappen på første side. I stedet for å vise en popup-melding, navigerer vi til siden vi nettopp har opprettet. Åpen MainPage.cs og finn hendelsesbehandleren vi opprettet for øyeblikket. Erstatt implementeringen med den som vist nedenfor.
privat tomt Button_Click (objekt sender, RoutedEventArgs e) NavigationService.Navigate (ny Uri ("/ Page1.xaml", UriKind.Relative));
I den jevne handleren kaller vi Navigere
metode på NavigationService
klasse, passerer i en forekomst av Uri
klasse. De NavigationService
klassen er tilgjengelig fra alle Windows Phone-sider, slik at vi kan navigere til en annen side.
De Navigere
metoden tar a Uri
eksempel som en parameter. Vi lager Uri
objekt ved å sende to parametere. Den første parameteren er den relative banen til siden vi vil navigere til, /Page1.xaml
i vårt eksempel. Det er viktig å legge til det fremste språket når du navigerer til en relativ sti. Den andre parameteren vi passerer er typen av Uri
vi går forbi, UriKind.Relative
i dette eksemplet. Det indikerer at første parameter er en relativ bane.
Vi trenger ikke å opprette en tilbakeknapp, fordi hver Windows Phone-enhet har en fysisk tilbakeknapp som tar brukeren til forrige side. Vi kunne imidlertid overstyre standardoppførelsen til tilbakeknappen hvis vi virkelig ville.
Kjør programmet enda en gang, og trykk på knappen på den første siden for å navigere til den andre siden. Hvis du har fulgt trinnene i denne opplæringen, bør programmet ta deg til neste side som vist nedenfor.
Som du kan se, er det veldig enkelt å navigere mellom sider i et Windows Phone-program. Jeg oppfordrer deg til å utforske dokumentasjonen for å lære mer om hendelser og navigering i Windows Phone.
I denne opplæringen lærte du grunnleggende om Windows Phone-hendelser og hvordan du håndterer hendelser. Du lærte også om navigering på Windows Phone.
I neste veiledning vil jeg vise deg hvordan du legger til medieelementer, for eksempel lyd og bilder, til et Windows Phone-program.