Otevřít hlavní menu

Windows Presentation Foundation (WPF, dříve Avalon) je v informatice knihovna tříd pro tvorbu grafického rozhraní, která je součástí .NET frameworku od verze 3.0 firmy Microsoft (je nástupcem Windows Forms). WPF je součástí Windows Vista, Windows 7 a Windows Server 2008 a je možné ji doinstalovat do Windows XP SP2/SP3 a Windows Server 2003. Pro vytvoření „uživatelsky bohatého rozhraní“ (RUI) využívá značkovací jazyk XAML, který umožňuje oddělit funkčnost a vzhled aplikace. Cílem WPF je sjednotit uživatelské rozhraní, 2D a 3D grafiku, vektorovou a rastrovou grafiku, animace a provázat s daty audia a videa.

Obsah

SoučástiEditovat

Následující seznam přibližuje některé z klíčových vlastností WPF.

GrafikaEditovat

  • Všechna grafika (včetně samotných WPF oken) funguje pomocí Direct3D knihoven.
    • To umožňuje hardwarovou akceleraci pomocí grafické karty a pokročilejší grafické schopnosti.
    • Vektorová grafika – objekty jsou matematicky popsány, plynulé přibližování bez rozmazání.
    • Podpora 3D renderingu.

Podpora starších knihovenEditovat

  • WPF spolupracuje s WinAPI. Je možné hostovat WPF kód ve WinAPI aplikaci a naopak.
  • Spolupráce s WinForms je také možná, pomocí tříd ElementHost a WindowsFormsHost.

Práce s médiiEditovat

  • Podpora všech nejpopulárnějších obrazových formátů.
  • Podpora video formátů WMV, MPEG a AVI za pomocí Windows Media Playeru (takže podpora formátů závisí na nainstalovaných codecích).

AnimaceEditovat

  • Překreslování animace je vyvoláváno po nastavených časových úsecích.
  • Animace se odehrává na tzv. storyboardu.
  • Animace mohou být spuštěny nejrůznějšími událostmi – spuštěním aplikace, kliknutím na tlačítko, dokončení úkolu, atd.
  • Tato část WPF se dodává s několika předdefinovanými efekty, jako například "fade out" – postupné zmizení prvku

Data bindingEditovat

  • Data binding umožňuje práci s daty z nějakého datového zdroje (databáze, XML soubor, atd.). Existují tři typy data bindingu:
    • "one time" – stáhne data a ignoruje aktualizace na zdroji.
    • "one way" – komunikace probíhá jen jedním směrem (read-only přístup k datům)
    • "two way" – zdroj i klient spolu komunikují, aktualizace se promítnou na obou
  • K LINQ dotazům můžeme také někdy přistupovat jako ke zdroji dat.
  • Díky oddělení designu od aplikační logiky můžeme snadno měnit vzhled zobrazených dat.

Vývojové nástrojeEditovat

WPF vývojáři mají v současnosti k dispozici poměrně širokou paletu velmi kvalitních nástrojů pro vývoj.

NástupceEditovat

WPF je vhodný na složitější aplikace, které jsou však vázány pouze na desktopové verze Windows. Nástupcem WPF jsou UWP aplikace, které jsou sice multiplatformní (mobilní zařízení, Xbox One), ale neposkytují vývojáři tolik volnosti a univerzálnosti (navíc UWP aplikace jsou omezeny systémem kvůli bezpečnosti). Proto WPF zůstává nástrojem pro tvorbu aplikací i pro nové systémy Windows 8 a Windows 10.[1][2]

ReferenceEditovat

  1. PRAGMATEEK. Is WPF dead: the present and future of WPF. Pragmateek [online]. 2014-12-12 [cit. 2018-04-18]. Dostupné online. 
  2. Which is best for Windows development in C#, WPF or UWP?. Quora [online]. 2016-12-21 [cit. 2018-04-18]. Dostupné online.