Le chargement dynamique de ressources dictionnaire des fichiers d'une application wpf donne une erreur

Je suis en train d'ajouter un fichier de ressources xaml dynamiquement à l'aide de l'instruction,

Application.Current.Resources.MergedDictionaries.Add(new ResourceDictionary() { Source = new Uri("resources/leaf_styles.xaml", UriKind.Relative) });

C'est la levée d'une exception, Ne peut pas localiser la ressource 'ressources/leaf_styles.xaml'.

J'ai ajouté le leaf_styles.fichier xaml pour le projet sous dossier de la ressource et de la BuildAction est réglé sur "Contenu", CopyAlways est définie sur True. Encore, j'obtiens cette erreur. Peut-on m'aider à sortir de pointage quoi de mal??

Informations supplémentaires -

  • Je ne veux pas intégrer le fichier xaml comme une ressource
  • Le projet actuel est un .net 3.5 projet de bibliothèque de classes
  • Ci-dessus mergedictionary déclaration est rédigée dans une classe appartenant à un même projet de
  • J'ai aussi ajouté le [assembly: AssemblyAssociatedContentFile("ressources/leaf_styles.xaml")] manuellement une fois, j'ai pensé que ce n'est pas de travail (pour les tests)

Mise à jour

Si je vous le donne comme un absolu emplacement, il fonctionne correctement.

Application.Current.Resources.MergedDictionaries.Add(new ResourceDictionary() { Source = new Uri(@"D:\foo\trunk\bin\resources\leaf_styles.xaml", UriKind.Absolute) });
Cela fonctionne si vous lui donner un chemin absolu (juste pour le test)?
Ouais, si je lui donner un chemin absolu, il est de travail. Application.Actuel.Les ressources.MergedDictionaries.Add(new ResourceDictionary() { Source = new Uri(@"D:\foo\trunk\bin\resources\leaf_styles.xaml", UriKind.Absolue) });

OriginalL'auteur sudarsanyes | 2011-05-17