IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Presentation Foundation Discussion :

WPF et optimisations


Sujet :

Windows Presentation Foundation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de despeludo
    Inscrit en
    Janvier 2004
    Messages
    121
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 121
    Par défaut WPF et optimisations
    Bonjour à tous !

    Petite question optimisations WPF. Cela fait quelques temps maintenant que je "joue" avec WPF et XAML.
    Parfois dans du code je me retrouve inévitablement avec des lignes de binding du style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <... Propriete1="{Binding RelativeSource={RelativeSource AncestorType={x:Type Toto}}, Path=Prop1"
         Propriete2="{Binding RelativeSource={RelativeSource AncestorType={x:Type Toto}}, Path=Prop2"
    ...
    Bon du coup je me dit que si je devais écrire celà dans un code CSharp plutôt qu'en XAML, j'aurais tendance à créer une variable locale stockant le résultat du FindAncestor (venant à la place du RelativeSource machin truc). J'image que cette fonction doit parcourir de manière ascendante le VisualTree, etc...

    Je pense que toutes ces fonctions de création de Binding par recherche d'un ancêtre doivent prendre un certain temps non négligeable.

    Du coup une manière d'optimiser le temps de création dune page WPF ne consisterait-elle pas plutôt à faire toutes ces opérations en code ou alors existe-t-il un moyen de déclarer une variable locale en Xaml ?

  2. #2
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Par défaut
    Honnetement, tu cherches des optimisations là où il n'y a rien à faire. Même si tu faisais ca par code, la valeur de la variable qui contiendrait le résultat du FindAncestor sera réévaluée à chaque fois....

  3. #3
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 562
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 562
    Par défaut
    y'aurait un solution d'optimisation c'est de binder l'element de base sur le datacontext du parent
    et puis d'utiliser le binding normal apres (la tu optimise l'acces au relative source)
    ceci etant le binding se fait une fois au debut, donc l'acces (la recherche) se fait aussi qu'une fois

Discussions similaires

  1. Optimisation de votre SGBDR et de vos requêtes...
    Par SQLpro dans le forum Langage SQL
    Réponses: 35
    Dernier message: 11/01/2013, 11h49
  2. Réponses: 2
    Dernier message: 18/06/2012, 09h45
  3. [Débutant] Création de style WPF + optimisation chargement
    Par PigKey6 dans le forum Windows Presentation Foundation
    Réponses: 5
    Dernier message: 13/04/2012, 20h02
  4. [langage]Problème de temps de lecture, optimisation
    Par And_the_problem_is dans le forum Langage
    Réponses: 2
    Dernier message: 08/01/2003, 08h47
  5. [langage] Optimiser la lecture d'un fichier
    Par And_the_problem_is dans le forum Langage
    Réponses: 2
    Dernier message: 11/06/2002, 10h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo