WPF

Windows Presentaion Foundation (WPF)

Moderne Oberflächen für Desktop-Programme

Windows Presentation Foundation (WPF) ist ein Grafik-Framework, mit dem moderne Windows-Anwendungen erstellt werden. Es ist ein Bestandteil des .NET Frameworks und wird standardmäßig mit aktuellen Betriebssystem-Versionen ausgeliefert.

Wie man Dialoge herstellt

Lange Zeit wurden Dialoge in Windows-Anwendungen mit Windows Forms erstellt. In Windows Forms stellt ein Form bzw. Formular eine visuelle Oberfläche dar, auf der Informationen für den Benutzer angezeigt werden.

Ein Entwickler erstellt Windows Forms-Anwendungen, indem er Steuerelemente in diese Formulare einfügt und Antworten auf Benutzeraktionen, wie Maus- und Tastatureingaben, abfängt und verarbeitet. Sobald ein Benutzer Aktionen im Formular oder in enthaltenen Steuerelementen ausführt, wird ein Ereignis generiert. Die Anwendung reagiert auf diese Ereignisse und verarbeitet sie zum Zeitpunkt ihres Auftretens.

Aber es geht noch besser

Um den neuen Anforderungen an Desktop-Anwendungen (u.a. bessere Skalierbarkeit auf beliebige Bildschirmgrößen, mehr grafische Animationen und Effekte, einfachere Handhabbarkeit während der Entwicklung, bessere Organisation des Quellcodes, uvm.) gerecht zu werden, entwarf Microsoft das WPF-Framework und veröffentlichte es mit dem .NET-Framework 3.0 im Jahr 2006.

Seither bietet WPF eine umfangreiche Bibliothek von Klassen, die zur Gestaltung von Oberflächen und zur Integration von Multimedia-Komponenten und Animationen dient. WPF vereint damit die Vorteile von DirectX, Windows Forms, Adobe Flash, HTML und CSS und hat sich zum Quasi-Standard für die Erstellung von Oberflächen für die Microsoft-basierten Systeme entwickelt.

WPF-Framework

Das Windows Presentation Framework versucht, die verschiedenen Bereiche, die für die Präsentation wichtig sind (Benutzerschnittstelle, Zeichnen und Grafiken, Audio und Video, Dokumente, Typographie), zu vereinen.

WPF trennt dabei konsequent die Präsentation eines Dialogs von der Geschäftslogik, indem die Oberfläche deklarativ durch s.g. XAML-Code (einer XML-basierten Auszeichnungssprache) beschrieben wird. Grafikelemente (beispielsweise Fenster) werden unter der Haube mit Direct3D gerendert. Dies hat zur Folge, dass einige Aufgaben nicht von der CPU, sondern hardwarebeschleunigt von der GPU der Grafikkarte übernommen und der Bildschirmaufbau daher schneller erfolgt als zu früheren Windows Forms-Zeiten.