La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Windows Presentation Foundation avancé – Partie 1 Mitsuru FURUTA – Microsoft France Relations techniques développeurs

Présentations similaires


Présentation au sujet: "Windows Presentation Foundation avancé – Partie 1 Mitsuru FURUTA – Microsoft France Relations techniques développeurs"— Transcription de la présentation:

1 Windows Presentation Foundation avancé – Partie 1 Mitsuru FURUTA – Microsoft France Relations techniques développeurs – Thomas LEBRUN MVS et formateur au laboratoire.Net –

2 Sommaire Les Contrôles WPF Les Ressources Les Styles Les Templates Les Triggers Les Animations Les Transformations Le Texte Le Binding Les Applications Navigateurs WPF et la 3D Interop WPF/WindowsForms

3 Les contrôles WPF La plupart des contrôles WindowsForms classiques sont disponibles avec WPF Ils possèdent plusieurs caractéristiques: Propriétés Evènements Méthodes DataBinding Grâce à la propriété Content, on peut personnaliser le contenu dun contrôle Un contrôle WPF ne contiendra plus seulement que du texte mais pourra également contenir dautres contrôles Les contrôles WPF peuvent donc être décomposés sous sous forme de graphes dobjets Possibilité de créer des UserControl

4 Les ressources La propriété Resources permet de définir les ressources qui seront utilisables par votre contrôle Les ressources peuvent être locales (liées à un contrôle précis) ou globales (liées à un contrôle parent et utilisable par tout les contrôles enfants) Par ressource, on entend: Les Styles Les Templates Les Animations Les Transformations Les sources de données Etc…

5 Les styles Inspiré des styles utilisé dans le développement Web, les CSS On définit les styles pour un type de contrôle Les styles vous permettent de définir lapparence visuelle de vos contrôles Vous définissez vos styles dans les ressources de votre contrôle

6 Les templates Les Templates définissent la structure de vos contrôles Vous allez donc pouvoir modifier la façon dont un contrôle affiche son contenu Les DataTemplate sont utilisés pour définir la représentation visuelle dun objet de données: un objet de type Photo pourra être représenté visuellement Utilisation des éléments et Utilisation des éléments et

7 Démo Les Contrôles, les Styles et les Templates

8 Les triggers Les Triggers permettent une meilleure interactivité entre votre application et lutilisateur Ils sont déclenchés lorsquune condition spécifique est vraie Les EventTrigger seront les plus utilisés: Le Trigger se déclenche lorsque lévènement indiqué survient Ils sont utilisés avec les Styles et les Templates:

9 Les animations StoryBoard: Regroupe des animations qui seront jouées à la demande Les animations sont utilisées dans des StoryBoards, au moyen des propriétés: TargetName: Indique la cible de votre animation TargetProperty: Indique quelle propriété doit-être animée Les animations sont utilisées pour animer les propriétés (taille, couleur, etc…) des objets

10 Les transformations Utilisées pour donner plus de vie à vos applications Permettent de transformer le rendu graphique dun contrôle Egalement utilisées dans des StoryBoards grâce aux propriétés TargetName et TargetProperty Plusieurs types sont disponibles: TranslateTransform: Effectue une translation dun contrôle RotateTransform: Exécute la rotation dun contrôle ScaleTransform: Redimensionnement dun contrôle MatrixTransform: Permet de créer vos propres transformations Vous pouvez tout à fait animer vos transformations !

11 Le texte WPF utilise un affichage vectoriel pour un rendu idéal Il existe de nombreux contrôles pour afficher du texte: Label TextBlock TextBox Etc.. On peut modifier certaines propriétés pour changer le rendu: FontFamily: Type de la police FontSize: Taille de la police FontStyle: Style de la police (italique, oblique, etc…) Certaines classes offertes par WPF permettent dafficher et de formater du texte, en utilisant des fonctions avancées telles que la pagination, la gestion des colonnes, la recherche de texte, etc..: FlowDocument FlowDocumentReader FlowDocumentPageViewer Etc..

12 Démo Les Triggers, les animations, les transformations et le texte

13 Le binding Avec WPF, la propriété DataSource nexiste plus: elle est remplacée par la propriété DataContext DataContext: Concept qui autorise les éléments enfants à hériter de linformation de lélément parent Classe Binding: ElementName: Spécifie quel contrôle sera la source de vos données Path: Indique quelle propriété utiliser pour effectuer le Binding XPath: Indique la requête XPath a effectuer sur la source de données (par exemple si vous utilisez un XmlDataProvider)

14 Le binding (2) Si le Binding relie deux propriétés du même type, il ny a aucun problèmes. Cependant, si les types sont différents (vous souhaitez par exemple lier une image à litem sélectionné dans une ListBox), vous devez utiliser un Converter On doit alors implémenter linterface IValueConverter qui propose les méthodes: Convert: Convertit un objet dans un type donné ConvertBack: Conversion dans le sens inverse

15 Démo Le Binding

16 Démo Cas pratique: Et si on mixait un peu tout ça Cas pratique: Et si on mixait un peu tout ça

17 Les applications navigateur Xaml Browser Applications Exécution en ligne uniquement, au travers dun navigateur Internet Aucune installation nest nécessaire: Déploiement via ClickOnce Ne nécessite que le Runtime WinFX Ces applications sexécutent dans un « SandBox » (bac à sable): Il sagit dun contexte sécurisé Permet de navoir aucun prompt/avertissement de sécurité au niveau du déploiement/de lexécution

18 Les applications navigationnelles Applications proposant des classes permettant la navigation au sein de lapplication: NavigationWindow Page PageFunction Elles permettent également de conserver un historique des pages visitées dans lapplication Il existe 2 catégories dapplications de ce type: Les Xaml Browser Applications (.xbap) Les applications autonomes (WindowsForms)

19 Démo Les applications navigateurs et les applications navigationnelles

20 WPF et la 3D Viewport3D: Conteneur 2D pour des graphismes/contrôles 3D Pour définir ce que lon va afficher, on utilise un modèle: ModelVisual3D On utilise une caméra pour visualiser le modèle en 3D On spécifie sa position, sa direction, son angle de vision On pourra animer cette caméra pour donner limpression de bouger autour du modèle

21 Démo WPF et la 3D

22 Interop WPF/WindowsForms Nom de code du projet: CrossBow But: Utiliser des contrôles WPF dans une application WindowsForms et inversement Utilisation de lassembly WindowsFormsIntegration.dll Contrôles WPF dans une applications WindowsForms: Utilisation dun contrôle ElementHost Contrôles WindowsForms dans une application WPF Utilisation dun contrôle WindowsFormsHost Il existe cependant des contraintes (telle que lutilisation de la transparence) quil faut prendre en compte

23 Démo Interop WPF/WindowsForms


Télécharger ppt "Windows Presentation Foundation avancé – Partie 1 Mitsuru FURUTA – Microsoft France Relations techniques développeurs"

Présentations similaires


Annonces Google