Nouveautés de WPF version 4

Cette rubrique contient les informations sur les fonctionnalités nouvelles et améliorées dans Windows Presentation Foundation (WPF), version 4.

Cette rubrique contient les sections suivantes :

  • Nouveaux contrôles

  • Gestionnaire d'état visuel

  • Fonctions tactiles et manipulation

  • Graphiques et animations

  • Texte

  • Liaison

  • Applications du navigateur XAML

  • WPF et Windows

  • Concepteur WPF et Silverlight

Nouveaux contrôles

Trois nouveaux contrôles ont été ajoutés à WPF afin de simplifier la création d'applications de gestion des informations professionnelles. Ces contrôles sont quasiment compatibles à 100 pour cent avec les versions de Silverlight. Cela permet aux développeurs de réutiliser le code et de créer rapidement les versions de client et Web.

Gestionnaire d'état visuel

WPF offre une meilleure prise en charge pour la modification des états visuels dans ControlTemplate. La classe VisualStateManager et les classes de prise en charge ont été ajoutées afin que des outils tels que Microsoft Expression Blend puissent être utilisés pour définir l'apparence d'un contrôle en fonction de son état visuel. Par exemple, vous pouvez définir l'apparence d'un contrôle Button lorsqu'il est dans l'état Pressed. Pour plus d'informations sur la création d'un ControlTemplate qui utilise le VisualStateManager pour un contrôle existant, consultez Personnalisation de l'apparence d'un contrôle existant en créant un ControlTemplate. Pour plus d'informations sur la création d'un nouveau contrôle qui utilise le VisualStateManager, consultez Création d'un contrôle avec une apparence personnalisable.

RemarqueRemarque

Les éléments peuvent tirer parti du VisualStateManager en dehors d'un ControlTemplate à l'aide de la méthode GoToElementState.

Fonctions tactiles et manipulation

Les éléments dans WPF acceptent maintenant l'entrée tactile. Les classes UIElement, UIElement3D et ContentElement exposent les événements qui se produisent lorsqu'un utilisateur touche un élément sur un écran tactile. Outre les événements tactiles, UIElement prend en charge la manipulation. Une manipulation est interprétée pour mettre à l'échelle, faire pivoter ou traduire le UIElement. Par exemple, une application d'affichage de photos peut permettre aux utilisateurs de déplacer, d'effectuer un zoom, de redimensionner et de faire pivoter une photo en touchant cette dernière sur l'écran de l'ordinateur. Pour plus d'informations sur les fonctions tactiles, consultez Procédure pas à pas : création de votre première application Touch et Vue d'ensemble des entrées.

Graphiques et animations

Plusieurs modifications ont été apportées aux graphiques et aux animations.

  • Arrondi de disposition

    Lorsque le bord d'un objet tombe au milieu d'un pixel de périphérique, le système de graphique indépendant des ppp peut créer des artefacts de rendu, tels que des bords flous ou semi-transparents. Les versions antérieures de WPF incluaient l'accrochage des pixels pour permettre de traiter ce cas. Silverlight 2 a introduit l'arrondi de disposition, qui est une autre manière de déplacer des éléments afin que les bords tombent sur les limites des pixels entières. WPF prend maintenant en charge l'arrondi de disposition avec la propriété jointe UseLayoutRounding sur FrameworkElement.

  • Composition mise en cache

    En utilisant les nouvelles classes BitmapCache et BitmapCacheBrush, vous pouvez mettre en cache une partie complexe de l'arborescence d'éléments visuels en tant qu'image bitmap et améliorer nettement l'heure du rendu. L'image bitmap continue de réagir aux entrées d'utilisateur, telles que les clics de souris, et vous pouvez la peindre sur d'autres éléments comme avec n'importe quel pinceau.

  • Prise en charge de Pixel Shader 3

    WPF 4 repose sur la prise en charge ShaderEffect introduite dans WPF 3.5 SP1 en autorisant maintenant des applications à écrire des effets à l'aide de Pixel Shader (PS) version 3.0. Le modèle du nuanceur de PS 3.0 est plus sophistiqué que celui de PS 2.0 et permet d'obtenir davantage d'effets sur le matériel pris en charge.

  • Fonctions d'accélération

    Vous pouvez améliorer des animations avec des fonctions d'accélération, qui vous permettent de mieux contrôler le comportement des animations. Par exemple, vous pouvez appliquer une ElasticEase à une animation afin de lui conférer un comportement élastique. Pour plus d'informations, consultez les types d'accélération dans l'espace de noms System.Windows.Media.Animation.

Texte

Plusieurs modifications ont été apportées au texte.

  • Nouvelle pile de rendu de texte

    La pile de rendu de texte WPF a été remplacée complètement. Cette modification apporte des améliorations à la possibilité de configuration, la clarté et la prise en charge du rendu de texte pour les langages internationaux. La nouvelle pile de texte prend maintenant en charge la sélection des modes de rendu avec alias, nuances de gris ou ClearType de manière explicite. La pile de texte prend maintenant en charge la disposition des caractères à l'affichage optimisé, afin de produire du texte d'une netteté comparable au texte Win32/GDI. La nouvelle pile de texte autorise l'optimisation de l'affinage et de l'accrochage de texte, qu'il soit animé ou statique. La nouvelle pile de texte prend également en charge des polices avec des images bitmap incorporées qui seront substituées par des tailles de polices plus petites, permettant ainsi à de nombreuses polices d'Extrême-Orient d'obtenir un rendu aussi nette que le texte Win32/GDI.

  • Sélection et personnalisation du signe insertion

    Vous pouvez maintenant spécifier le pinceau qui peint la sélection et le signe insertion pour les contrôles d'entrée et de lecture, tels que TextBoxRichTextBox et FlowDocumentReader. Il existe deux nouvelles propriétés sur TextBoxBase :

    • SelectionBrush vous permet de créer un pinceau pour la mise en surbrillance du texte sélectionné ;

    • CaretBrush vous permet de modifier le pinceau qui peint le curseur.

Liaison

Différentes modifications et améliorations ont été apportées à la liaison.

Applications du navigateur XAML

Deux fonctionnalités ont été ajoutées aux XAML browser applications (XBAPs).

  • Interopérabilité des scripts HTML_XBAP

    Vous pouvez maintenant communiquer avec la page Web qui contient le XBAP lorsque l'application est hébergée dans un frame HTML. Le XBAP peut obtenir l'accès complet au DOM HTML et peut gérer des événements DOM. Pour plus d'informations, consultez BrowserInteropHelper.HostScript.

  • Déploiement XBAP de confiance totale

    Si votre XBAP requiert la confiance totale, l'utilisateur recevra maintenant automatiquement l'invite d'élévation ClickOnce standard lors de l'installation de l'application à partir de l'intranet ou de l'un des sites approuvés de son navigateur.

Pour plus d'informations sur ces deux fonctionnalités, voir Vue d'ensemble des applications de navigateur XAML.

WPF et Windows

La barre des tâches Windows 7 fournit des fonctionnalités améliorées qui vous permettent d'utiliser le bouton de la barre des tâches pour communiquer l'état à un utilisateur et exposer les tâches courantes. Les nouveaux types dans l'espace de noms System.Windows.Shell fournissent des wrappers managés pour les fonctionnalités dans la barre des tâches Windows 7 et gèrent les données passées au shell Windows. Par exemple, le type JumpList vous permet d'utiliser des listes de raccourcis et le type TaskbarItemInfo vous permet d'utiliser des miniatures de la barre des tâches.

Les boîtes de dialogue WPF sur Windows 7 et Windows Vista prennent maintenant en charge l'apparence du style Windows 7 et Windows Vista, qui inclut des emplacements personnalisés. Pour plus d'informations, consultez la classe FileDialogCustomPlace.

Concepteur WPF et Silverlight

Dans Visual Studio 2010, différentes améliorations du concepteur ont été apportées pour aider à créer des applications WPF ou Silverlight.

  • Prise en charge améliorée de Silverlight

    Dans Visual Studio 2008, vous pourriez installer Silverlight Tools pour créer des applications Silverlight dans Visual Studio. Toutefois, la prise en charge du concepteur pour les projets Silverlight s'est avérée limitée. Dans Visual Studio 2010, le niveau de prise en charge du concepteur des projets Silverlight et WPF est maintenant similaire. Par exemple, dans les projets Silverlight, vous pouvez maintenant sélectionner et positionner des éléments avec la souris sur l'aire de conception.

  • Prise en charge de plusieurs versions de plateformes

    Dans Visual Studio 2008, les temps de conception des contrôles ne pouvaient cibler que la dernière version de la plateforme WPF. Dans Visual Studio 2010, cette prise en charge est étendue à l'ensemble des plateformes, y compris la prise en charge au moment du design pour WPF 3.5, WPF 4, Silverlight 3, Silverlight 4 et les versions de plateformes à venir. Comme la même API d'extensibilité existe pour toutes ces plateformes, les auteurs des temps de conception des contrôles peuvent facilement écrire une expérience utilisateur et la partager sur l'ensemble des exécutions de contrôles pour chaque plateforme.

  • Liaison de données visuelle

    Le nouveau générateur de liaisons de données permet la construction visuelle et la modification de liaisons sans taper XAML.

  • Disposition automatique

    Les améliorations de disposition incluent un concepteur Grid plus intuitif et une meilleure prise en charge des contrôles utilisateur à retaille automatique.

  • Modification de propriété améliorée

    La fenêtre Propriétés permet maintenant la création et la modification visuelles des ressources Brush.

Pour plus d'informations, consultez Concepteur WPF.

Voir aussi

Concepts

Nouveautés de .NET Framework 4