21 WPF – die Grundlagen
Mit dem .NET Framework 3.0 wurde eine neue Programmierschnittstelle für Windows-Anwendungen eingeführt, die sich Windows Presentation Foundation nannte (WPF). Mit dem Visual Studio 2008 wurde WPF nun neben anderen neuen Technologien fest in die Entwicklungsumgebung integriert.
In den kommenden Kapiteln werden wir uns mit WPF beschäftigen. Dabei können wir nicht alle Aspekte berücksichtigen, denn der Umfang ist zu groß geworden. Aber ich möchte Ihnen einen Einstieg in die neue Technologie geben und Ihnen zeigen, wie Windows-Anwendungen in Zukunft entwickelt werden. Sie werden feststellen, dass die Lernkurve nicht so steil ist wie bei den nun in die Tage kommenden WinForms, die das Thema der letzten Kapitel waren. Neben den Kenntnissen in der Programmierung müssen Sie allerdings mit XAML eine neue »Sprache« lernen, mit der die Oberflächen in WPF gestaltet werden.
Das sollte Sie nicht abschrecken, die ersten Schritte zu wagen, denn die Möglichkeiten, mit WPF eine optisch hervorstechende Anwendung auszuliefern, überschreiten bei weitem die, die uns bisher mit den WinForms zur Verfügung standen.
21.1 Die Merkmale einer WPF-Anwendung 

Am Anfang stellt sich natürlich zuerst die Frage, welche typischen Charakteristika eine WPF-Anwendung auszeichnen und wo die Vorteile im Vergleich zu den WinForms zu suchen sind. Die folgende Liste soll diese Fragen beantworten.
- Die Benutzeroberfläche wird mit einer an XML angelehnten Sprache beschrieben: mit XAML (eXtensible Application Markup Language, gesprochen Xemmel). Dadurch wird es möglich, die Beschreibung der Benutzeroberfläche vom Code strikt zu trennen – ähnlich wie es unter ASP.NET bereits seit Jahren möglich ist.
- Grundsätzlich besteht die Möglichkeit, eine Benutzeroberfläche bereitzustellen, die entweder in einem herkömmlichen Fenster oder im Browser angezeigt wird.
- WPF-Anwendungen bieten eine umfangreiche Unterstützung von 2D- und 3D-Grafiken. Dabei wird die schnelle Grafikausgabe durch DirectX unterstützt.
- WPF-Anwendungen bieten vielfältige grafische Unterstützung, z. B. zur Darstellung der Steuerelemente, grafische Animationen, Unterstützung von Videos, Bildern und Audio-Dateien.
- WPF-Anwendungen bieten vielfältige Datenbindungsmöglichkeiten für die Komponenten.
- Eine Verteilung mit XCopy und ClickOnce ist möglich.
Dies ist nur ein kleiner Überblick. Sicherlich werden Sie dabei bemerken, dass es in erster Linie um die Verbesserung des Designs und Layouts geht – ganz im Sinne des letzten Betriebssystems Windows Vista.
Welcher Technologie sollte man den Vorzug geben, wenn man mit der Entwicklung einer Windows-Anwendung im allgemeinen Sinne des Begriffs startet: den WinForms oder WPF?
Die grafischen Fähigkeiten von WPF stellen wohl alles Vergangene in den Schatten. Wollen Sie runde Buttons? Kein Problem. Wollen Sie runde Fenster? Ebenfalls kein Problem. Die exzellenten grafischen Möglichkeiten von WPF mögen vielleicht einer der großen Vorteile sein, bergen aber auch gleichzeitig die Gefahr, Oberflächen zu entwickeln, die vom Benutzer nicht mehr intuitiv bedient werden können. Zudem sind WPF-Anwendungen nur unter Windows XP, Windows Server 2003 und Vista lauffähig.
Die strikte Trennung von Oberflächenbeschreibung und Code gestattet es, dass die Oberfläche von einem Grafiker gestaltet wird, während der Entwickler den Code dazu schreibt. Die Oberflächenbeschreibung erfolgt in XAML, während die Programmlogik in C#, VB.NET oder einer anderen .NET-Sprache codiert werden kann. Übrigens gibt es von Microsoft mit Expression Blend ein Tool, das vornehmlich für Designer gedacht ist.
WPF ist eine neue Technologie. Die Vergangenheit lehrt uns, dass neue Technologien meistens in der ersten Version noch nicht ausgereift sind. Das soll nicht bedeuten, dass neue Konzepte fehlerbehaftet sind. Vielmehr mangelt es an Komponenten, die für ältere Technologien selbstverständlich sind. Sie werden das auch feststellen, wenn Sie sich über den Rahmen dessen, was ich Ihnen im Folgenden vorstellen werde, hinaus mit WPF beschäftigen werden. Sie werden einige altbekannte Steuerelemente vergeblich suchen, andererseits werden auch zahlreiche neue Steuerelemente spezifisch für WPF angeboten.




Jetzt bestellen





