Post on 03-Apr-2015
Windows Presentation Foundation
Mitsu Furuta (mitsufu@microsoft.com)
http://blogs.microsoft.fr/mitsufu
DevDays 2006Equipé aujourd’hui, prêt pour demain !
AgendaIntroduction
Définitions et démonstrationsComment développer avec WPF ?
Les principaux concepts techniquesComment fonctionne WPF ?
Fonctionnement et intégration de WPF par Vista et Windows XP
La gamme ExpressionInteractive Designer, Graphic Designer, Web Designer
Développement d’applications WinFxSmartClient nouvelle génération
Conclusion
Définition
Windows Presentation Foundation est le nouveau sous-système graphique unifié de Windows Vista et Windows XP. Il est composé d’un moteur de rendu natif ainsi que de librairies .NET. WPF unifie la façon dont Windows crée, affiche et manipule les documents, les médias et les interfaces graphiques, permettant à la fois aux développeurs et aux designers d’offrir une expérience utilisateur de nouvelle génération.
Applications finales:• Northface• Puzzle• Login screen
Démo
Démo
Comment ça marche :WPF, des APIs :
Helloworld, architecture de baseExternalisation d’interface
En WinForms ?Sérialisation vers… XAML
Hello world : avec les APIs de WPF
Demo
Demo
Externalisation d’interfaces• avec des Windows Forms
Demo
Demo
Hello world : avec Xaml
Demo
Demo
Comment ça marche :Modèles de compilation et d’exécution
XAML onlyCode onlyMixte (code beside)Applications « navigateur »Dans Visual Studio
Fichier bamlFichier « .g.cs »
Le langage de sérialisation XAML La chaîne d’exécutionXAML
Dispose de spécifications publiquesComplète les langages de la plate-forme .NETDéfinit un pivot technique dans une chaîne de production
Edition électronique Graphiste Animation Modélisation 3D
XAMLImpression LocalisationConception
Sérialisation
Demo
Demo
BAMLBAML
C#/VB/etcC#/VB/etc
Compilation
Images, etcImages, etc
XAMLXAML
Fichier .g.csFichier .g.cs
Classe partielle
Comment ça marche: modèle de compilation
Execution
InitializeComponentInitializeComponentDésérialisation grâceDésérialisation grâceaux informationsaux informationsdu BAMLdu BAML
InitializeComponentInitializeComponentDésérialisation grâceDésérialisation grâceaux informationsaux informationsdu BAMLdu BAML
EXEEXE
Comment développer avec WPF ?
Les templatesRendu modifiable à volontéCapitaliser sur un comportement et non un renduUne approche par composant un peu particulière
Les stylesApporter design et comportementTypage et héritage
Templates et styles
Demo
Demo
Comment développer avec WPF ?
Le binding universelBinding sur objetsBinding entre contrôles WPFBinding sur XMLBinding sur ressourcesBinding sur template
Les documentsXPS (Xml Paper Specifications), OPCGestion complète de documents (fixed, flow, impression, DRM, etc…)
Comment fonctionne WPF ?Intégration de WPF par Vista et Windows XP
Le sous-système graphique : Composition engineLes applications GDI ?Les applications DirectX ?
…et ailleurs: WPF /EWPF /Everywhere
ListBoxListBox
ButtonButton ButtonButton
ScrollViewerScrollViewer
StackPanelStackPanel
CompNodeCompNode
CompNodeCompNode CompNodeCompNode CompNodeCompNode
CompNodeCompNode
CompNodeCompNodeCompNodeCompNode CompNodeCompNode
ListBoxListBox
ButtonButton ButtonButton
ScrollViewerScrollViewer
StackPanelStackPanel
TransportTransport
UI ThreadUI Thread Render ThreadRender Thread
DX SurfacesDX Surfaces
BitmapsBitmaps
CompNodeCompNode
CompNodeCompNodeCompNodeCompNode CompNodeCompNode
Fonctionnement de WPF
Demo
Demo
La gamme « Expression »Expression Graphic Designer
Mélange pixel et vectorielProduit des images, des pages HTML et XAML
Expression Interactive DesignerConception d’IHM interactive 2D ou 3D importées de produits comme 3DMax ou ZAM3DEntièrement écrit en code managé au dessus de WinFX et ne manipule que du XAML
Expression Web DesignerRelègue Frontpage à un outil d’administration de sitesProduit des pages HTML, ASP, ASP.NET, XAML et ATLAS
3 outils, 1 format commun : XAML !
“AcrylicGraphics Designer”
“Sparkle Interactive Designer”
“Quartz Web Designer”
Nouvelle approche de la créationCinématique entre les outils/profils
CiderInteractive D.Graphics D. VS
Graphiste
•Définition de la charte graphique•Déclinaison graphique•Vectorisation des objets
Bitmap+vectoriel
WPF Designer
•Intégration visuelle•Création des styles•Création des templates •Cinématiques 2D et 3D
XAML
Intégrateur
•Conception logicielle classique•Constitution de l’IHM WPF fonctionnelle
C#, VB.NET, etc
Graphics Designer
Web Designer
Interactive Designer
Expression Graphic Designer
Demo
Demo
Expression Interactive Designer
Demo
Demo
Développement d’une application WinFx
WCFRemoteDestopServerParamétrage de la sécurité
WPFRemoteDesktopClientDévelopper une application « riche »Améliorer l’interfaceRepenser l’ergonomie
ConclusionWPF sort en version 1.0 cet été avec WinFx (Windows Vista et Windows XP)WPF est le socle de développement des futures applications SmartClient mais :
Aujourd’hui les WindowsForms restent la technologie de référence basée sur le framework .NETDirectX reste la technologie de référence pour le développement de jeux ou d’applications graphiques avancées
Appréhender WPF dès aujourd’hui vous permet de vous préparer aux développements d’interfaces riches de demain. Grâce au langage XAML, offrez à vos applications un format d’avenir, multi-canal, multi-device, portable et partageable
WPF: aller plus loin
Vous voulez:Comprendre les détails de fonctionnement de WPF ?Savoir que les propriétés des objets WPF ne sont pas stockées par les objets !?!Connaître les interfaces et concepts permettant le binding des objets de WPF
RDV après les DevDays pour un mercredi du développement spécial WPF : http://blogs.microsoft.fr/mitsufu
Rendez-vous sur le site MSDN pour y retrouver l’ensemble des contenus des DevDays 2006 :
Les webcastsLes présentationsLes codes source
http://www.microsoft.com/france/msdn/devdays2006/default.mspx
Sur le site MSDN