Windows Presentation Foundation

Windows Presentation Foundation
Wpfapp.PNG
Aktuální verze5.0.6 (11. května 2021)
Typ softwaruWidget toolkit a framework
Licencelicence MIT
Webmsdn.microsoft.com/vstudio/aa663326.aspx
Některá data mohou pocházet z datové položky.

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.

Součásti

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

Grafika

  • 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 knihoven

  • 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édii

  • 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).

Animace

  • 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 binding

  • 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ástroje

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

  • SharpDevelop
  • Visual Studio 2008, 2010, 2012, 2013, 2015, 2017, 2019
  • Expression Tools, například:
    • Expression Blend
    • Expression Design

Nástupce

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]

Reference

  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. 

Externí odkazy

Média použitá na této stránce

Wpfapp.PNG
Autor: Jan-Cornelius Molnar, Licence: CC BY-SA 2.5
Screenshot of my first WPF Application with custom chrome.