Neues in WPF Version 4

Dieses Thema enthält Informationen über die neuen Features und Verbesserungen in Windows Presentation Foundation (WPF) Version 4.

Dieses Thema enthält folgende Abschnitte:

  • Neue Steuerelemente

  • Manager für den visuellen Zustand

  • Fingereingabe und Manipulation

  • Grafiken und Animationen

  • Text

  • Bindung

  • XAML-Browseranwendungen

  • WPF und Windows

  • WPF- und Silverlight-Designer

Neue Steuerelemente

WPF wurden drei neue Steuerelemente hinzugefügt, um die Erstellung von Geschäftsanwendungen zu vereinfachen. Diese Steuerelemente sind fast vollständig mit den Silverlight-Versionen kompatibel. Dadurch können Entwickler Code wiederverwenden und Client- und Webversionen schnell erstellen.

Manager für den visuellen Zustand

WPF bietet bessere Unterstützung zum Ändern visueller Zustände in einer ControlTemplate. Die VisualStateManager-Klasse und unterstützende Klassen wurden hinzugefügt, sodass Tools wie Microsoft Expression Blend verwendet werden können, um die Darstellung eines Steuerelements gemäß seinem visuellen Zustand zu definieren. Sie können z. B. die Darstellung eines Button-Steuerelements definieren, wenn es sich im Zustand Pressed befindet. Weitere Informationen zum Erstellen einer ControlTemplate, die den VisualStateManager für ein vorhandenes Steuerelement verwendet, finden Sie unter Anpassen der Darstellung eines vorhandenen Steuerelements durch Erstellen einer ControlTemplate. Informationen zum Erstellen eines neuen Steuerelements, das den VisualStateManager verwendet, finden Sie unter Erstellen eines Steuerelements mit einer anpassbaren Darstellung.

HinweisHinweis

Elemente können den VisualStateManager außerhalb einer ControlTemplate mit der GoToElementState-Methode nutzen.

Fingereingabe und Manipulation

Elemente in WPF akzeptieren jetzt Fingereingabe. Die UIElement-, UIElement3D- und ContentElement-Klassen machen Ereignisse verfügbar, die auftreten, wenn ein Benutzer ein Element auf einem für die Fingereingabe aktivierten Bildschirm berührt. Zusätzlich zu den Berührungsereignissen unterstützt das UIElement die Bearbeitung. Eine Manipulation skaliert, dreht oder übersetzt das UIElement. Mit einer Anwendung zum Anzeigen von Fotos können Benutzer ein Foto beispielsweise verschieben, zoomen, seine Größe ändern und das Foto drehen, indem sie den Computerbildschirm über dem Foto berühren. Weitere Informationen zur Fingereingabe finden Sie unter Exemplarische Vorgehensweise: Erstellen der ersten Fingereingabeanwendung und Übersicht über die Eingabe.

Grafiken und Animationen

Mehrere Änderungen wurden im Hinblick auf Grafiken und Animationen vorgenommen.

  • Layoutrundung

    Wenn ein Objektrand in die Mitte eines Pixelgeräts fällt, kann das DPI-unabhängige Grafiksystem Renderingartefakte erstellen, z. B. verschwommene oder semitransparente Ränder. Frühere Versionen der WPF haben die Pixelausrichtung für diese Fälle verwendet. Silverlight 2 hat die Layoutrundung eingeführt, die eine andere Möglichkeit bietet, um Elemente so zu verschieben, dass Ränder auf ganzen Pixelgrenzen liegen. WPF unterstützt jetzt die Layoutrundung mit der angefügten UseLayoutRounding-Eigenschaft auf FrameworkElement.

  • Zwischengespeicherte Komposition

    Mit den neuen Klassen BitmapCache und BitmapCacheBrush können Sie einen komplexen Teil der visuellen Struktur als Bitmap zwischenspeichern und die Renderingzeit dadurch erheblich optimieren. Die Bitmap reagiert weiterhin auf Benutzereingabe, z. B. Mausklicks, und Sie können sie wie jeden Pinsel auf anderen Elementen zeichnen.

  • Unterstützung von Pixel Shader 3

    WPF 4 Builds erweitert die in WPF 3.5 SP1 eingeführte ShaderEffect-Unterstützung und ermöglicht es Anwendungen jetzt, Effekte mit Pixel Shader (PS) Version 3.0 zu schreiben. Das PS 3.0-Shadermodell ist ausgereifter als PS 2.0 und ermöglicht noch mehr Effekte auf unterstützter Hardware.

  • Beschleunigungsfunktionen

    Sie können Animationen mit Beschleunigungsfunktionen verbessern, die Ihnen zusätzliche Kontrolle über das Verhalten von Animationen geben. Sie können z. B. eine ElasticEase für eine Animation übernehmen, um der Animation ein Federverhalten zuzuweisen. Weitere Informationen finden Sie unter den Beschleunigungstypen im System.Windows.Media.Animation-Namespace.

Text

Mehrere Änderungen wurden im Hinblick auf Text vorgenommen.

  • Neuer Textrenderingstapel

    Der WPF-Textrenderingstapel wurde vollständig ersetzt. Diese Änderung führt zu Verbesserungen des Textrendering im Hinblick auf Konfigurierbarkeit, Klarheit und Unterstützung für internationale Sprachen. Der neue Textstapel unterstützt jetzt explizit das Auswählen von Alias-, Graustufen- oder ClearType-Renderingmodi. Der Textstapel unterstützt jetzt das anzeigeoptimierte Zeichenlayout, um Text mit einer Schärfe zu erstellen, die mit Win32/GDI-Text vergleichbar ist. Der neue Textstapel ermöglicht die Optimierung von Texthinweisen und -ausrichtung für animierten oder statischen Text. Außerdem unterstützt der neue Textstapel Schriftarten mit eingebetteten Bitmaps für die Ersetzung bei kleineren Schriftgrößen. Dadurch können viele ostasiatische Schriftarten mit einer Schärfe gerendert werden, die mit Win32/GDI-Text vergleichbar ist.

  • Auswahl- und Caretzeichenanpassung

    Sie können jetzt den Pinsel angeben, der die Auswahl und das Caretzeichen für Eingabe- und Lesesteuerelemente zeichnet, wie z. B. TextBoxRichTextBox und FlowDocumentReader. Es gibt zwei neue Eigenschaften in TextBoxBase:

    • Mit SelectionBrush können Sie einen Pinsel zum Hervorheben von markiertem Text erstellen.

    • Mit CaretBrush können Sie den Pinsel ändern, der den Cursor zeichnet.

Bindung

Verschiedene Änderungen und Erweiterungen wurden im Hinblick auf die Bindung vorgenommen.

XAML-Browseranwendungen

XAML browser applications (XBAPs) wurden zwei Funktionen hinzugefügt.

  • HTML-XBAP-Skript-Interop

    Sie können jetzt mit der Webseite kommunizieren, die die XBAP enthält, wenn die Anwendung in einem HTML-Frame gehostet wird. Die XBAP kann weitreichenden Zugriff auf das HTML-DOM erhalten und kann DOM-Ereignisse verarbeiten. Weitere Informationen finden Sie unter BrowserInteropHelper.HostScript.

  • Vollständig vertrauenswürdige XBAP-Bereitstellung

    Wenn die XBAP volle Vertrauenswürdigkeit erfordert, empfängt der Benutzer jetzt die ClickOnce-Standardeingabeaufforderung für erhöhte Rechte automatisch, wenn er die Anwendung aus dem Intranet oder von einer der vertrauenswürdigen Sites seines Browsers installiert.

Weitere Informationen zu diesen beiden Funktionen finden Sie unter Übersicht über WPF-XAML-Browseranwendungen.

WPF und Windows

Die Windows 7-Taskleiste bietet eine verbesserte Funktionalität, mit der Sie die Schaltfläche der Taskleiste verwenden können, um einem Benutzer den Status mitzuteilen und häufig ausgeführte Aufgaben verfügbar zu machen. Neue Typen im System.Windows.Shell-Namespace stellen verwaltete Wrapper für Funktionalität in der Windows 7-Taskleiste bereit und verwalten die an die Windows-Shell übergebenen Daten. Der JumpList-Typ ermöglicht es Ihnen beispielsweise, mit Sprunglisten zu arbeiten, und der TaskbarItemInfo-Typ ermöglicht es Ihnen, mit Taskleistenminiaturansichten zu arbeiten.

WPF-Dialogfelder in Windows 7 und Windows Vista unterstützen jetzt das Erscheinungsbild des Windows 7- und Windows Vista-Formats, das benutzerdefinierte Speicherorte beinhaltet. Weitere Informationen finden Sie in den Ausführungen zur FileDialogCustomPlace-Klasse.

WPF- und Silverlight-Designer

In Visual Studio 2010 wurden verschiedene Designerverbesserungen vorgenommen, um die Erstellung von WPF oder Silverlight-Anwendungen zu vereinfachen.

  • Verbesserte Unterstützung für Silverlight

    In Visual Studio 2008 konnten Sie die Silverlight Tools installieren, um Silverlight-Anwendungen in Visual Studio zu erstellen. Die Designerunterstützung für Silverlight-Projekte war jedoch eingeschränkt. In Visual Studio 2010 ist die Designerunterstützung für Silverlight- und WPF-Projekte jetzt identisch. Zum Beispiel können Sie in Silverlight-Projekten jetzt auf der Designoberfläche Elemente mit der Maus auswählen und positionieren.

  • Unterstützung für mehrere Plattformversionen

    In Visual Studio 2008 konnte nur für Steuerelemententwurfszeiten nur die aktuellste WPF-Plattformversion als Ziel verwendet werden. In Visual Studio 2010 wird diese Unterstützung auf mehrere Plattformen erweitert, einschließlich Entwurfszeitunterstützung für WPF 3.5, WPF 4, Silverlight 3, Silverlight 4 und zukünftige Versionen. Da die gleiche Erweiterbarkeits-API für alle genannten Plattformen vorhanden ist, können Entwickler von Steuerelemententwurfszeiten einfach eine Version erstellen und in mehreren Serversteuerelementlaufzeiten für verschiedene Plattformen verwenden.

  • Visuelle Datenbindung

    Der neue Datenbindungs-Generator ermöglicht die visuelle Konstruktion und Bearbeitung von Bindungen ohne die Eingabe von XAML.

  • Automatisches Layout

    Layoutverbesserungen beinhalten einen intuitiveren Grid-Designer und bessere Unterstützung für die automatische Größenanpassung von Benutzersteuerelemente.

  • Verbesserte Eigenschaftenbearbeitung

    Das Eigenschaftenfenster ermöglicht jetzt die visuelle Erstellung und Bearbeitung von Brush-Ressourcen.

Weitere Informationen finden Sie unter WPF-Designer.

Siehe auch

Konzepte

Neues in .NET Framework 4