WPF A Windows Presentation Foundation (WPF) a Windows Form utódjának tekinthető asztali alkalmazások fejlesztése terén. Az egyik legnagyobb és egyben legfontosabb különbség, hogy az alkalmazás megjelenéséért felelős kód elkülönül az alkalamzás funkcionalitását leíró kódtól. A WPF GDI/GDI+ helyett DirectX-et használ. Emiatt tetszőleges típusú felhasználói felületet hozhatunk létre. Tervezhető akár komplex háromdimenziós grafika is, de üzleti alkalmazások esetében is kiaknázhatóak a gazdag grafikai hatások. A DirectX már nem a CPU, hanem a GPU erőforrásait használja. Raszter grafika helyett már vektor alapúak az elemek. Emiatt az egyes elemek tetszőlegesen átméretezhetőek. Továbbá kevesebb helyet foglalnak. Viszont továbbra is használja a raszter grafikát. Előnyei: Dokumentum és nyomtatás Biztonság, hozzáférhetőség és lokalizáció Együttműködést kínál a következővel: Windows Űrlapvezérlők A Direct3D-t grafikus alkalmazásokban használják, ahol a teljesítmény fontos A megjelenítéshez a videókártyát használja A vektor-alapú grafika lehetővé teszi az alkalmazás méretezését minőségromlás nélkül A WBF támogatja a lebegőpontos logikai pixelrendszert és a 32 bites ARGB színt Stílusok és vezérlősablonok újradefiniálása Nemzetközi betűtípusok építése összetett betűtípusokból A WPF szövegmegjelenítés segít a ClearType technolósgia előnyeinek kihasználásában Lehetővé teszi az előre rendelt szöveg gyorsítótárazási technikájának használatát a videómemóriában Erőforrás-alapú megközelítés minden vezérléshez A bemutató időzítőit a WPF inicializálja és kezeli A videó és az animáció közötti kapcsolat szintén támogatott A WPF-ben a stílus olyan tulajdonságok halmaza, amelyeket a vizuális megjelenítéshez használt tartalomra kell alkalmazni A WPF sablonjai segítenek a dokumentum UI értékének megváltoztatásában A parancsok az események elvontabb és lazábban kapcsolt változatai A WPF parancsok támogatása csökkent a megírandó kód mennyiségét A WPF többrétegű architektúrájának legfelső szintjén a PresentationFramework.dll áll. Ezt használjuk fejlesztés közben, itt vannak implementálva a különböző vezérlők (Button, Border,...) stílusok, stb. PresentationFramework.dll számára az alaposztályokat (UIElement, Visual, stb.) a PresentationCore.dll biztosítja. Ezekből az osztályból származnak többek között a formák (shape) és a vezérlők (controls). A WindowsBase.dll a WPF alapvető működéséhez szükséges objektumosztályokat tartalmazza. A WPF névterei a System.Windows névtérben helyezkednek el. System.Object A WPF összes osztálya a System.Object-ből származik. A WPF legfontosabb komponensei a PresentationFramework, PresentationCore és a milcore, tartalmazzák a WPF legfontosabb kódrészleteit. Ezek között a milcore az egyetlen nem menedzselt kódban írt komponens. XAML XAML (eXtensible Application Markup Language) egy XML alapú deklaratív jelölőnyelv, amely a .NET keretrendszer modelljébe illeszkedve leegyszerűsíti a grafikus felhasználói felület (GUI) kialakítását. XAML deklaratív nyelv nyelvtani szabályrendszere nagyon egyszerű. Általános tervezési alapelve, hogy a XAML dokumentum minden eleme - kivéve, ha egy attribútumot definiál A XAML előnyei: Elválasztja a front-end megjelenést a háttér logikától A legegyszerűbb módszer a felhasználói felületek ábrázolására Hatékonyan dolgozik az eszközökkel