Windows Phone 8 O introducere în XAML

Dezvoltarea de software este, de obicei, un proces în două etape care implică dezvoltarea interfeței utilizator și logica de afaceri a aplicației. Windows Phone nu face excepție de la această paradigmă. Când se dezvoltă pentru Windows Phone, XAML este utilizat pentru implementarea interfeței utilizator a aplicațiilor Windows Phone.

1. Ce este XAML?

XAML sau Limbaj de marcare extinsă pentru aplicații este un limbaj declarativ dezvoltat de Microsoft și folosit în Windows Phone pentru a crea obiecte grafice de interfață cu utilizatorul. Dacă sunteți familiarizat cu XML, atunci un fragment de cod al XAML va arăta foarte familiar. XAML este la a C # dezvoltator ce HTML este la un dezvoltator web. Este baza de proiectare a interfeței cu utilizatorul pentru Windows Phone.

Platforma Windows Phone are la dispoziție o mulțime de blocuri de construcție, cum ar fi Butoane, Blocuri de text, Cutii de text etc. Chiar dacă este posibilă dezvoltarea unei aplicații Windows Phone 8 utilizând doar C #, este impracticabilă și greoaie.

XAML face mult mai ușor crearea interfețelor utilizatorilor. După crearea unui nou proiect sau a unei pagini Windows Phone 8 în Visual Studio, vă sunt prezentate două vizualizări. O vizualizare afișează codul XAML, în timp ce cealaltă vizualizare arată dezvoltatorului reprezentarea vizuală a acestuia.

Pentru a înțelege mai bine acest lucru, să revizuim proiectul pe care l-am creat în tutorialul anterior, în care am creat prima noastră aplicație Windows Phone 8.

               

Observi imediat aceeași structură ierarhică pe care o găsești în XML și HTML. Fiecare element din codul XAML reprezintă un control Windows Phone, despre care vom discuta mai târziu în această serie. Veți observa că fiecare element are o etichetă de deschidere și de închidere, la fel ca în XML sau HTML. De asemenea, puteți vedea că unele elemente au atribute suplimentare, având următoarea structură:

   

Mă voi referi la fiecare element din fișierul XAML ca un control, deoarece acestea reprezintă controalele Windows Phone, care sunt obiecte care fac parte din cadrul. Fiecare dintre aceste controale poate avea proprietăți atașate acestora. Unele dintre aceste controale, cum ar fi Grilă și StackPanel controale, poate conține chiar și alte controale în cadrul acestora. De exemplu, arătați cum StackPanel de control cu Nume proprietatea TitlePanel conține două TextBlock controale.

Acest aranjament ierarhic de elemente permite dezvoltatorilor să elaboreze interfața utilizator a aplicațiilor Windows Phone cu mult mai ușoară și oferă, de asemenea, o structură între controalele care alcătuiesc interfața utilizator a unei aplicații Windows Phone.

2. XAML versus Cod

Așa cum am spus mai devreme în acest articol, este posibil să creați întreaga interfață de utilizator a aplicației Windows Phone în C #, fără a utiliza XAML. În realitate, totuși, acest lucru nu este foarte practic. Acest lucru nu este recomandat, deoarece face proiectarea interfeței de utilizare a aplicației neclară și puțin peste tot.

În plus, utilizarea cu strictețe a C # pentru a crea interfața de utilizator a aplicației va limita în mod semnificativ posibilitatea utilizării MVVM model de design care este copt în dezvoltarea Windows Phone. Aceasta înseamnă tehnici avansate, cum ar fi legarea datelor, va fi mai dificil de implementat.

Să aruncăm o privire mai atentă la cele două tehnici, XAML și C #, pentru a construi o interfață utilizator a aplicației. Pentru această comparație, voi arăta mai întâi cum TextBlock și a Buton controlul sunt declarate într - un StackPanel control folosind XAML. Vă voi arăta echivalentul în C #.

XAML

 Un bloc text simplu  

Puteți vedea cât de declarativ este fragmentul XAML de mai sus. Este ușor de înțeles ierarhia controalelor. Există un alt beneficiu atunci când utilizați XAML. Putem vedea direct rezultatul schimbărilor noastre în Visual Studio prin panoul de previzualizare a designului, care este de obicei poziționat în stânga în Visual Studio.

C #

Să vedem cum putem implementa aceeași interfață cu utilizatorul folosind C # în loc de XAML.

// Creați stackPanel StackPanel stackPanel = StackPanel nou (); this.Content = stackPanel; // Creați TextBlock TextBlock textBlock = TextBlock (); textBlock.Margin = grosime nouă (10); textBlock.Text = "Un bloc text simplu"; stackPanel.Children.Add (textBlock); // Creați butonul Butonul butonului = butonul nou (); buton.Margin = grosime nouă (20); button.Content = "Buton simplu"; stackPanel.Children.Add (buton);

După cum puteți vedea, este un pic mai clunkier în comparație cu XAML și nu putem vedea rezultatul modificărilor noastre în zbor. S-ar putea să fi observat că blocul de cod din C # este aproape dublu față de liniile de cod și nu este la fel de ușor de citit ca fragmentul XAML pe care l-am văzut mai devreme.

Pentru dezvoltarea Windows Phone, XAML este modalitatea recomandată de a crea interfețe utilizator. Cu toate acestea, pot exista momente în care trebuie să implementăm controale mai complicate care sunt dificil de creat utilizând XAML, de exemplu când controlul trebuie să fie dinamic într-o oarecare măsură. Chiar dacă aceste situații sunt mai puțin frecvente, este bine să știți că putem reveni la C #.

Concluzie

XAML este o parte integrantă a dezvoltării Windows Phone și o înțelegere fermă este prin urmare esențială. Vă încurajez să aruncați o privire la documentația oficială XAML de la Microsoft pe Windows Phone Dev Center. Acesta conține informații aprofundate despre utilizarea XAML pentru dezvoltarea Windows Phone.

În acest tutorial, am analizat rolul XAML în dezvoltarea Windows Phone și modul în care se compară cu C # pentru a crea interfețe utilizator. În următorul tutorial, vom continua să lucrăm cu XAML și să abordăm câteva dintre cele mai comune controale Windows Phone, utilizarea lor și modul de implementare a acestora într-o aplicație Windows Phone 8.

Cod