J’ai un chemin (une écanvas):
Maintenant, je veux dupliquer ce chemin plusieurs fois (en faisant simplement référence à “NiceStar”). Puis-je faire cela en XAML pur?
Je peux l’utiliser une fois, en faisant ceci:
Cependant, je ne peux pas dupliquer cette ligne. Mon compilateur dit:
L’élément spécifié est déjà l’enfant logique d’un autre élément. Déconnectez-le d’abord.
Créez un style.
…
Bien sûr, définissez juste un style pour le chemin et vous pourrez ensuite le réutiliser en tant que ressource statique:
Dans une note connexe (bien que ne répondant probablement pas directement à votre question), vous pouvez également déclarer un FrameworkElement en tant que ressource, lui atsortingbuer une clé et tant que vous ajoutez x:Shared="False"
vous pouvez accéder à nouveau à la ressource et à nouveau dans le code.
Voici un exemple pseudocodé:
Ensuite, dans le code, vous pouvez accéder à la forme dotée de ressources et la réutiliser autant de fois que nécessaire.
Ellipse tempRect = (Ellipse)FindResouce("ReusableEllipse");
Je transformerais le chemin en DrawingBrush . Ceci est très facile à faire, il suffit de sélectionner le chemin, Outils> Créer une ressource de pinceau> Créer une ressource DrawingBrush. Ensuite, vous aurez le pinceau dans vos ressources, prêt à être réutilisé. Je m’attends à ce que les performances de ce dernier soient plutôt bonnes, car le pinceau est non interactif et réutilisable.
Voici le XAML:
Une autre option consiste à transformer le chemin d’access en source d’images à l’aide de DrawingImage.
Vous pouvez utiliser le style avec un modèle de contrôle pour cette
Et puis l’utiliser: