2009-08-26 6 views
1

J'ai une question à propos de la notation de paquet. J'essaie d'accéder à un fichier image PNG dans une page XAML à partir d'un autre assemblage de ressources.Pack Notation dans WPF

Disons que l'Assemblée des ressources (ce qui est en dehors de l'assemblée locale que mon fichier XAML est), est ResourceAssembly.Common.Resources et que mon image est en ResourceAssembly.Common.Resources/Images/image.png.

Ma notation pack se présente comme suit:

<Image Source="pack://application:,,,/ResourceAssembly.Common.Resources;component/Images/image.png" /> 

Maintenant, je l'ai vérifié cela et vérifié à nouveau, vérifié les bibliothèques MSDN, vérifié blogs et tout, et pour autant que je sache, c'est exact. Je ne sais pas pourquoi mon image ne s'affiche pas ou quel est le problème.

L'erreur que je reçois est: « Error 633 Could not load file or assembly 'ResourceAssembly.Common.Resources, Culture=neutral' or one of its dependencies. The system cannot find the file specified. »

j'imagine que je manque un peu simple mot-clé ou une erreur de syntaxe simple, ou quelque chose dans ce sens que toujours que mon problème, mais toute aide serait être inestimable.

Merci! Anuj

Répondre

5

J'ai eu un problème similaire lorsque j'ai commencé à utiliser la notation pack, mais je ne me souviens plus du problème. Votre notation pack semble identique à ce que je suis, donc je vérifier chaque partie et assurez-vous qu'il est correct:

  1. Est-ce que AssemblyInfo.cs pour votre ensemble de ressources contiennent exactement: [assembly: AssemblyTitle("ResourceAssembly.Common.Resources")]? (Il suffit de faire en sorte que ResourceAssembly.Common.Resources est le nom de montage réelle et non le nom du projet ou un espace de noms.)

  2. Est-ce que le projet client ont une référence à l'assemblage ResourceAssembly.Common.Resources ou d'un projet?

  3. Y a-t-il une chance qu'une copie de ResourceAssembly.Common.Resources soit installée dans le GAC? (S'il existe localement et dans le GAC, il peut provoquer un conflit de nom court.)

  4. Le dossier "Images" est-il directement lié au projet ResourceAssembly.Common.Resources? (Cela semble être le cas, mais juste pour être sûr.)

  5. La propriété Build Action pour image.png est-elle définie sur Resource? (Cela devrait être par défaut, mais on ne sait jamais.)

  6. Est-ce que ResourceAssembly.Common.Resources fait référence à des assemblages qui ne sont pas inclus dans votre projet client? (Pack URIs en XAML ne sont pas résolus au moment de la compilation IIRC, ce qui signifie que les dépendances transitif ne seront pas apportés au projet.)

Si ce n'est pas une de ces choses alors il est au-delà de moi. :)

+0

Merci AndyM, votre liste de contrôle a été très utile, même si elle n'était pas la solution à mon problème. À mon grand mécontentement, je reconnais qu'en examinant de plus près, j'ai découvert une faute de frappe très mineure ... et euh, ouais ... Merci pour votre aide malgré tout, ça marche maintenant.:) – AnujSuper9

+0

Je suis content que vous l'ayez fait fonctionner; Je connais l'aggravation de leur correction. – AndyM

Questions connexes