Tutorial WPF pentru începători: Cum să creați o aplicație [Exemplu]
Ce este WPF?
extensia wp este un cadru de construcție Windows aplicații care permit utilizatorilor să dezvolte interfețe de utilizator bogate având animații 3D și culori bogate cu o complexitate mai mică a codului. Este un motor de randare bazat pe vectori care utilizează accelerarea hardware a plăcilor grafice moderne, ceea ce face Ul mai rapid și foarte scalabil. WPF înseamnă Windows Despre Institutul Bruno Comby Foundation.
WPF poate fi considerat ca o evoluție față de WinForms. Produce un sistem de afișare grafică ușor de utilizat Windows. Oferă o separare ușoară între UI și logica de afaceri.
Aplicațiile WPF pot fi implementate în sistemul dvs. ca program desktop autonom sau găzduite ca obiect încorporat într-un site web.
De ce WPF?
Există multe motive pentru a utiliza platforma WPF, unele proeminente sunt:
- O platformă ideală de utilizat dacă aveți nevoie să vă ocupați de diferite tipuri de media
- WPF vă permite să creați o interfață de utilizator cu piele. De asemenea, vă ajută atunci când trebuie să încărcați o parte din interfața de utilizare sau doriți să legați date XML
- Vă permite să beneficiați de biblioteca mare de clase .NET, așa cum este construită pe aceasta Tehnologia .NET
- Independență de rezoluție, astfel încât aplicațiile dezvoltate folosind WMF pot fi rulate pe dispozitive mobile sau pe un monitor de 20 de inchi
- WPF se bazează pe DirectX în loc de WinAPI. Oferă sistemul grafic al computerului client. Prin urmare, oferind o putere mai mare de redare grafică
- Acceptă un model de document flux care permite calitatea „publicării pe desktop” a aspectului
- Aspectul și comportamentul sunt slab cuplate. Acest lucru permite designerilor și dezvoltatorilor să lucreze la două modele separate
- În cadrul WMF, puteți proiecta grafic instrumente pe documente XML simple, în loc să analizați codul
- Vă permite să utilizați accelerarea hardware pentru desenarea GUI, pentru o performanță mai bună
Istoria WPF
Windows 1.0 a fost primul mediu GUI de la Microsoft. Funcționează ca un strat deasupra DOS, bazându-se pe sistemele GDI și USER pentru interfața grafică și utilizator.
DirectX a fost introdus în anul 1995, ca sistem grafic de înaltă performanță. A fost destinat jocurilor și altor medii legate de grafică. De-a lungul anilor, au apărut multe versiuni cu Directx9 care oferă o bibliotecă de utilizat cu codul mange.Net.
Versiunea WPF | Anul lansării | Versiune .Net | Versiunea Visual Studio | DESCRIERE |
---|---|---|---|---|
3.0 | 2006 | 3.0 | - | Lansare inițială. Cu toate acestea, dezvoltarea WPF se poate face cu VS 2005. |
3.5 | 2007 | 3.5 | SUA 2008 | Modificari si imbunatatiri in: Model de aplicație, legare, controale, documente, adnotări și elemente 3-D Ul. |
3.5 SP1 | 2008 | 3.5 SP1 | - | Suport nativ pentru ecran de splash. Nou control al browserului web, suport DirectX pixel shader. |
4.0 | 2010 | 4.0 | SUA 2010 | Noi comenzi: Calendar. DataGrid, DatePicker. Multi-Touch și manipulare |
4.5 | 2012 | 4.5 | SUA 2012 | Timp de configurare mai rapid și performanță îmbunătățită pentru efectele Bitmap. Noi comenzi: Calendar. DataGrid, DatePicker. Multi-Touch și manipulare |
4.5.1 | 2013 | 4.5.1 | SUA 2013 | Control nou Ribbon Noua interfață INotifyDataErrorlnfo |
4.5.2 | 2014 | 4.5.2 | NA | Nicio schimbare majoră Nicio schimbare majoră |
4.6 | 2015 | 4.6 | SUA 2015 | Suport transparent pentru fereastră pentru copii Îmbunătățiri HDPI și Touch |
Cea mai recentă versiune stabilă a WPF 5.0.6, care este lansată în aprilie 2021.
Caracteristicile WPF
- Documente și tipărire
- Securitate, accesibilitate și localizare
- Oferă interoperabilitate cu Windows Controale de formulare
- Direct3D este utilizat în aplicațiile grafice în care performanța este importantă
- Utilizează hardware-ul plăcii video pentru randare
- Grafica vectorială vă permite să scalați aplicația fără pierderi de calitate
- WPF acceptă sistemul de pixeli logici în virgulă mobilă și culoare ARGB pe 32 de biți
- Redefiniți stiluri și șabloane de control
- Construirea de fonturi internaționale din fonturi compozite
- Redarea textului WPF vă ajută să profitați de tehnologia ClearType
- Vă permite să utilizați tehnica de stocare în cache a textului pre-ratat în memoria video
- Abordare bazată pe resurse pentru fiecare control
- Temporizatoarele de prezentare sunt inițializate și gestionate de WPF
- Relația dintre video și animație este, de asemenea, susținută
- În WPF, un stil este un set de proprietăți care ar trebui aplicat conținutului utilizat pentru redarea vizuală
- Șabloanele din WPF vă ajută să schimbați Ul-ul documentului
- Comenzile sunt versiuni mai abstracte și mai slab cuplate ale evenimentelor
- Suportul WPF pentru comenzi reduce cantitatea de cod pe care trebuie să o scriem
Următorul în acest WPF Tutorial C#, vom afla despre tipurile de bază WPF și despre infrastructură.
Tipuri și infrastructuri de bază WPF
Clasele din WPF sunt împărțite în patru tipuri diferite:
- UIElement
- FrameworkElement
- ContentElement
- FrameworkContentElement
Aceste clase, cunoscute ca clase de elemente de bază. Acesta oferă baza pentru un model de compunere a interfețelor utilizator.
Interfețele utilizator WPF sunt compuse din elemente care sunt asamblate într-o ierarhie arborescentă. Se numește arborele de elemente. Arborele de elemente este o modalitate intuitivă de aranjare a interfeței utilizator. Este o structură care vă permite să obțineți caracteristica unor servicii puternice de UI.
XAML
Extensible Application Markup Language, care se numește „XAML” sau „zammel” este o modalitate declarativă de a defini interfețele utilizator.
Iată definiția XAML a unui buton simplu:
<Button FontSize="16" HorizontalAlignment="Center" VerticalAlignment="Center" > Say Hello Guru99</Button>
Avantajul utilizării limbajului XAML:
- XAML care separă aspectul front-end de logica back-end
- XAML este cea mai ușoară metodă de a reprezenta interfețele utilizator
- XAML este lucrul eficient cu instrumente
Controale
Cadrul WPF acceptă multe controale utile, cum ar fi:
- Comenzi de editare precum TextBox, VerificaBox, Buton de radio
- Listează controale, cum ar fi ListăBox, ListView, TreeView
- Informații despre utilizator, cum ar fi Label, WPF ProgressBar, ToolTip
- Acțiuni precum Meniu, Buton și Bară de instrumente
- Aspecte precum Border, WPF Image și Viewbox
- Casete de dialog comune, cum ar fi OpenFileDialog și PrintDialog.
- Containere precum TabContro, ScrollBar și GroupBox
- Aspecte precum DocPanel, StackPanel și Grid
- Navigare, cum ar fi Frame și Hyperlink
Aspectul controalelor poate fi personalizat cu stiluri și șabloane fără programare. De asemenea, puteți crea un control personalizat derivând o nouă clasă dintr-o clasă de bază adecvată.
Aspect
WPF oferă o caracteristică pentru personalizarea aspectului aplicației dvs. Vă permite să setați obiecte și valori pentru lucruri precum fonturi, fundaluri etc.
Funcția de stiluri vă permite să standardizați un aspect specific pentru întregul produs. Vă permite să înlocuiți aspectul implicit, păstrând în același timp comportamentul implicit.
Șablonul de date vă permite să controlați vizualizarea implicită a datelor legate. Cu ajutorul temelor, puteți vizualiza cu ușurință stiluri din sistemul de operare.
Aspect și panouri
Aspectul vă ajută să controlați poziționarea și dimensionarea corectă. Face parte din procesul de compunere a prezentării pentru utilizator. Cadrul WPF ușurează procesul de aspect și oferă o mai bună adaptabilitate a aspectului UI.
Infrastructura de layout este oferită de diferite clase sunt 1) StackPanel 2) DockPanel 3) WrapPanel 4) Grid și 5) Canvas
Grafică
WPF oferă un sistem grafic îmbunătățit, cum ar fi
- WPF folosește unități independente de dispozitiv, permițând rezoluția și independența dispozitivului. Prin urmare, fiecare pixel, care este independent de dispozitiv, scala automat cu sistemul de setare puncte-pe-inch
- WPF folosește dublu în loc de float și acceptă o gamă mai largă de culori
- Motorul grafic WPF este proiectat astfel încât să poată profita de hardware-ul grafic atunci când este disponibil
Documente și tipărire
Cadrul WPF oferă trei tipuri de documente:
- Documente fixe: Acest tip de document acceptă WYSIWPrezentare YG.
- Documente de flux: Vă permite să ajustați și să redistribuiți conținutul pe baza variabilelor de rulare, cum ar fi dimensiunea ferestrei și rezoluția dispozitivului.
- Documente XPS: Este o reprezentare paginată a hârtiei electronice într-un format bazat pe XML. XPS este un format de document open source și multiplatformă.
WPF permite un control mai bun asupra sistemului de imprimare. Include imprimarea de la distanță și cozi. Mai mult, documentele XPS pot fi tipărite direct fără a le converti într-un format de imprimare.
extensia wp Architectură
WPF face parte din cadrul .NET. Conține atât cod gestionat, cât și cod negestionat. Componentele importante ale arhitecturii WPF sunt explicate în figura de mai jos:
Componente ale arhitecturii WPF
- Cadrul de prezentare: vă ajută să creați elemente de nivel superior, cum ar fi comenzi, stiluri, aspect, ferestre etc.
- PresentationCore: Deține tipuri de bază, cum ar fi UIElement, Visual din toate controalele și formele sunt derivate în PresentationFramework.dll.
- CRJ: face ca procesul de dezvoltare să fie productiv, oferind caracteristici precum gestionarea memoriei, tratarea erorilor etc.
- Milcore: Milcore este o parte a codului negestionat care oferă o integrare strânsă cu DirectX.
- DirectX: Este API-ul de nivel scăzut care permite redarea graficelor WPF. Discuțiile DirectX interacționează cu driverele și redă conținutul.
- Utilizator 32: Este un API de bază care este utilizat pe scară largă de multe programe. Gestionează memoria și separarea proceselor. User32 vă ajută să decideți ce element va fi plasat unde pe ecran.
- Nucleu: Intrarea provine ca un semnal pe un driver de dispozitiv în modul kernel și este direcționată către procesul corect și prin conectarea cu Windows kernel și User32.
Instalare WPF
Consultați acest link pentru a instala WPF https://www.guru99.com/download-install-visual-studio.html
În continuare, în acest tutorial de aplicație WPF, vom construi primul nostru WPF.
Cum să creezi prima ta aplicație WPF?
În acest exemplu WPF, vom dezvolta o aplicație de bază WPF. Deci, să începem implementarea simplă urmând pașii dați în exemplele de aplicații WPF de mai jos.
Pas 1) În Visual Studio, accesați Fișier > Proiect
Pas 2) În noua fereastră de proiect
- Selectați aplicația WPF
- Introduceți numele ca „MyWPF”
- Faceți clic pe OK
Pas 3) Visual Studio creează două fișiere în mod implicit
- Fișier XAML (MainWindow.xaml)
- Fișier CS (MainWindow.xaml.cs)
MainWindow.xaml are
- O fereastră de design
- Fișier XAML
În ferestrele XAML, următoarele etichete sunt scrise ca implicite
Grila este primul element implicit.
MainWindow.xaml.cs conține codul corespunzător din spatele fișierului de design XAML
Pas 4) În cutia de instrumente,
- Trageți textBox element la fereastra de proiectare
- Un textBox va apărea în fereastra de proiectare
- Veți vedea codul XAML pentru textBox adăugat
Pas 5) Schimbați textul în „Primul program WPF”.
Pas 6) Faceți clic pe butonul Start
Pas 7) Veți vedea o fereastră la ieșire
Felicitări! Ați proiectat și creat prima aplicație WPF. În continuare, în acest tutorial WPF pentru începători, vom vedea diferența dintre WPF și WinForms.
WPF vs. WinForms
extensia wp | WinForms |
---|---|
Este un cadru mai nou, deci este mai în ton cu standardele actuale. | Este mai vechi, deci este mai încercat și testat. |
Este flexibil și bogat în caracteristici. Puteți proiecta aplicații foarte bogate fără codare sau cumpărare de controale. | Nu atât de bogat în caracteristici |
Dezvoltatorii de 3rd controalele partidelor se concentrează pe compatibilitatea cu WPF, deoarece este viitorul. | Există multe controale de la terți pe care le puteți cumpăra sau obține gratuit. |
XAML vă permite să creați și să editați cu ușurință GUI. Acesta permite ca munca să fie împărțită între un designer (XAML) și un programator (C#, ASP.net etc.). | In Windows Formează tot codul scris într-un singur loc. |
WPF poate crea interfețe de utilizator pentru ambele Windows aplicații și aplicații web precum Silverlight și XBAP. | Nu există un astfel de sprijin |
Suita de control integrată a WPF este limitată | Comenzile din cutie sunt foarte puternice |
Tip de aplicații construite cu WPF
- WPF încearcă să înlocuiască formularele web și formularele Windows - aplicațiile pot fi create pentru a rula într-un browser sau într-o fereastră independentă
- Windows Formularele și paginile WPF pot coexista în aceeași aplicație
- Puteți dezvolta aplicații pentru pagină/fereastră
Ghid rapid
- Forma completă WPF este Windows Despre Institutul Bruno Comby Foundation
- Este o platformă ideală de utilizat dacă aveți nevoie să vă ocupați de diferite tipuri de media
- Windows 1.0 a fost primul mediu GUI de la Microsoft care lucra pe DOS și se baza pe sistemele GDI și USER
- WPF în .NET oferă interoperabilitate cu Windows Controale de formulare
- WPF sunt împărțite în patru tipuri diferite, cum ar fi UIElement, FrameworkElement ContentElement și FrameworkContentElement
- Cele mai importante componente ale unei părți a arhitecturii WPF sunt PresentationFramework, PresentationCore, CLR, Milcore, DirectX, User32 și Kernel
- WPF este un cadru mai nou care compară WinForms, deci este mai în ton cu standardele actuale
- Windows Formularele și paginile WPF pot coexista în aceeași aplicație