Windows Phone 8: En introduksjon til XAML

Windows Phone 8: En introduksjon til XAML
26
Del
3
Del

Dette Cyber ​​Monday Envato Tuts + kurs vil bli redusert til bare $ 3. Ikke gå glipp av
Dette innlegget er en del av en serie som heter Komme i gang med Windows Phone 8.Windows Phone 8. Oppretting av First ApplicationWindows Phone 8: Styrer og Egenskaper

Utvikling programvare er vanligvis en to trinns prosess som innebærer å utvikle brukergrensesnittet og forretningslogikk av søknaden. Windows Phone er intet unntak fra dette paradigmet. Ved utvikling for Windows Phone, XAML
benyttes for gjennomføring av brukergrensesnittet i Windows Phone applikasjoner.

1. Hva er XAML?

XAML
eller Extensible Application Markup Language
er adeclarative språk utviklet av Microsoft og brukes i Windows Phone tocreate grafiske objekter brukergrensesnitt. Hvis du er kjent med XML
, vil thena kodebit av XAML ser veldig kjent. XAML er en C #
utbygger hva HTML
er en webutvikler. Det er grunnlaget for utformingen av brukergrensesnittet for Windows Phone.

WindowsPhone plattformen har mange byggesteiner til rådighet, som knapper, tekstblokker, tekstbokser, etc. Selv om det er mulig å utvikle en Windows Phone 8-programmet bruker bare C #, er det upraktisk og tungvint.

XAML gjør lage brukergrensesnitt mye enklere. Når du har opprettet en ny Windows Phone 8 prosjekt eller siden i Visual Studio, blir du presentert med to visninger. Én visning viser XAML-kode, mens den andre visningen viser utvikleren sin visuelle utforming representasjon.

For å bedre forstå dette, la oss se prosjektet vi opprettet i forrige tutorial der vi laget vår første Windows Phone 8-programmet.
< Grid x: Name = "LayoutRoot" Bakgrunn = "Transparent" > < Grid.RowDefinitions > < RowDefinition Høyde = "Auto" /> < RowDefinition Høyde = "*" /> < /Grid.RowDefinitions> <! - TitlePanel inneholder navnet på programmet og en side - > < StackPanel x: Name = "TitlePanel" Grid.Row = "0" Margin = "12,17,0,28" > < TextBlock Text = "MIN SØKNAD" style = "{StaticResource PhoneTextNormalStyle}" Margin = "12,0" /> < TextBlock Text = "side navnet" Margin = "9, -7,0,0" style = "{StaticResource PhoneTextTitle1Style}" /> < /StackPanel > <! - ContentPanel - plass til ekstra innhold her - > < Grid x: Name = "ContentPanel" Grid.Row = "1" Margin = "12,0,12,0" > < /Grid > < /Grid >

Du umiddelbart legge merke til det samme hierarchicalstructure du finner i XML og HTML. Eachelement i XAML koden representerer en Windows Phone-kontroll, som vi vil bediscussing senere i denne serien. You'llnotice at hvert element har en åpning og lukking tag, akkurat som i XML eller HTML. Du canalso se at noen elementer har flere attributter, tar thefollowing struktur:
< ElementName eiendom1 = "Value" Property2 = "Value" ... > < ChildElementName Eiendom = "Value" > < /ChildElementName > < /ElementName >

Jeg vil referere til hvert element i XAML-filen som en kontroll som de representerer Windows Phone-kontroller, som er objekter som er en del av rammeverket. Hver av disse kontrollene kan ha egenskaper knyttet til dem. Noen av disse kontrollene, slik som Grid Hotell og StackPanel
kontroller, kan også inneholde andre kontroller i dem. For eksempel, se hvordan StackPanel
kontroll med navnet tilhører TitlePanel inneholder to TextBlock
kontroller.


Dette hierarkisk ordning av elementer lar utviklere å designe brukergrensesnittet til Windows Phone applikasjoner med mye mer letthet og gir også strukturen mellom kontrollene som utgjør brukergrensesnittet til en Windows Phone-programmet.

2. XAML versus Kode

Som jeg sa tidligere i denne artikkelen, er det mulig å lage hele brukergrensesnittet til en Windows Phone-programmet i C #, uten å bruke XAML. I virkeligheten, men dette er ikke særlig praktisk. Dette er ikke anbefalt, fordi det gjør utforme programmets brukergrensesnitt rotete og litt over alt.

I tillegg strengt ved hjelp av C # for å lage program brukergrensesnitt vil begrense muligheten for å bruke MVVM
design mønster som er bakt inn i Windows Phone utvikling. Dette betyr avanserte teknikker, slik som databinding
, vil være mer vanskelig å gjennomføre.

La oss ta en nærmere titt på de to teknikkene, XAML og C #, til å bygge et program brukergrensesnitt. For denne sammenligningen, vil jeg først vise hvordan en TextBlock Hotell og en Button
kontroll er erklært i en StackPanel
kontroll ved hjelp XAML. Deretter vil jeg vise deg tilsvarende i C #

XAML
. ≪ StackPanel > < TextBlock Margin = "20" > En enkel TextBlock < /TextBlock > < Button Margin = "10" HorizontalAlignment = "Right" Content = "Simple Button" > < /Button > < /StackPanel >

Du kan se hvordan deklarative ovennevnte XAML biten er. Det er lett å forstå hierarkiet av kontrollene. Det er en annen fordel ved bruk av XAML. Vi kan direkte se resultatet av våre endringer i Visual Studio gjennom utformingen forhåndsvisningsruten, som vanligvis er plassert til venstre i Visual Studio.

C #

La oss se hvordan vi kan implementere det samme brukergrensesnitt ved hjelp av C # i stedet for XAML
//Opprett Vår StackPanelStackPanel stackPanel = new StackPanel ();. this.Content = stackPanel; //Opprett Vår TextBlockTextBlock textBlock = new TextBlock (); textBlock.Margin = new Tykkelse (10); textBlock.Text = "A Simple TextBlock"; stackPanel.Children.Add (textBlock); //Opprett Vår ButtonButton knapp = new Button (); button.Margin = new Tykkelse (20), button.Content = "Simple Button"; stackPanel.Children.Add (knapp);

Som du ser, er det litt clunkier i forhold til XAML og vi er ikke i stand til å se resultatet av våre endringer på fly. Du kan også ha lagt merke til at kodeblokken i C # er nesten dobbelt linjer med kode, og det er ikke så lesbar som XAML snippet vi så tidligere.

For Windows Phone utvikling, er XAML den anbefalte måten å lage brukergrensesnitt. Men det kan være tider som vi trenger for å gjennomføre mer kompliserte kontroller som det er vanskelig å lage ved hjelp av XAML, for eksempel når kontrollen må være dynamisk til en viss grad. Selv om disse situasjonene er mindre vanlig, er det godt å vite at vi kan falle tilbake på C #.

Konklusjon

XAML er en integrert del av Windows Phone utvikling og en god forståelse er derfor viktig. Jeg oppfordrer deg til å ta en titt på den offisielle XAML dokumentasjon fra Microsoft om Windows Phone Dev Center. Den inneholder detaljert informasjon om bruken av XAML for Windows Phone utvikling.

I denne opplæringen, vi har tatt en titt på den rollen XAML i Windows Phone utvikling og hvordan det sammenlignet med C # for å lage bruker grensesnitt. I neste opplæringen, vil vi fortsette å jobbe med XAML og komme til tak med noen av de mer vanlige Windows Phone-kontroller, deres bruk, og hvordan å gjennomføre dem på en Windows Phone 8-programmet.