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 :
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...
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" ...
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 ?
Partager