wpf - xaml set window icon




Que signifient les chemins de source d'image dans xaml? (2)

Cette URI signifie que le fichier image est inclus dans votre projet en tant que contenu. "ProjectName" est le nom de votre projet.

Je regarde le code source du projet sur lequel je travaille dans Visual Studio, et les chemins semblent étranges dans la fenêtre XAML de WPF. Par exemple, le membre de l'icône de l'élément window ressemble à ceci: Icon="/ProjectName;component/icons/ProjectName.ico"

Tout d'abord, que signifie le point-virgule? Cela indique-t-il deux chemins possibles? Cela n'a pas de sens.

Je devine ProjectName;component représente un chemin, car il n'y a aucun dossier de component dans mon projet. Dans mon dossier de projet, icons/ProjectName.ico est l'emplacement de l'icône.

Qu'est-ce que tout cela veut dire?


Il s'agit d'un URI de fichier de ressources , sans le préfixe pack://application:,,, qui est automatiquement ajouté par l'analyseur XAML.

L'URI Pack complet serait

pack://application:,,,/ProjectName;component/icons/ProjectName.ico

et référencer un fichier de ressources nommé ProjectName.ico dans un sous-dossier d' icons dans l'assembly référencé ProjectName . La partie ;component sépare le nom de l'assembly du chemin du fichier.

Si le fichier de ressources est dans l'assembly local, vous pouvez omettre la pièce d'assemblage référencée et écrire

pack://application:,,,/icons/ProjectName.ico

ou en XAML juste

/icons/ProjectName.ico




icons