2009-05-13 8 views
0

Je suis en train de charger un fichier XAML externe en utilisant ce code:Impossible de charger ResourceDictionary externe

<Application.Resources> 
    <ResourceDictionary> 
     <ResourceDictionary.MergedDictionaries> 
      <ResourceDictionary Source="pack://application:,,,/OfficeStyle;component/OfficeStyleWindow.xaml" /> 
     </ResourceDictionary.MergedDictionaries> 
    </ResourceDictionary> 
</Application.Resources> 

réflecteur d'ouverture sur la DLL "OfficeStyle" donne:

alt text http://robbertdam.nl/share/p3.png

Exécution de l'application donne cette erreur:

alt text http://robbertdam.nl/share/p4.png

L'erreur apparaît et le code XAML que j'ai placé au début de ce post. Qu'est-ce que je rate? Le fichier XAML que j'essaye de charger contient un tas de Styles etc. Je veux réutiliser dans mon application.

Répondre

1

Quelle est l'action de construction pour votre fichier OfficeStyleWindow.xaml? Il devrait être Page, pas EmbeddedResource

+0

Eh bien, j'ai commencé avec "Resource", mais que Reflector n'affiche pas le fichier xaml. Il montre seulement quand je le fais EmbeddedResource. Dans les deux cas, le fichier de ressources ne peut pas être localisé. –

+0

Désolé, je réalise que j'ai fait une erreur ... l'action de construction devrait être Page, pas Resource; J'ai mis à jour ma réponse. Vous ne verrez pas le fichier XAML dans Reflector car il sera compilé en tant que BAML. Dans Reflector, il apparaîtra comme une ressource MemoryStream nommée "Resources/OfficeStyleWindow.baml", dans le module de ressources OfficeStyle.g.resources –

+0

Merci, ce qui fait que "page" a fait le travail! –

0

Essayez d'ajouter le nom du dossier au chemin du pack.

Pack: // application: ,,,/OfficeStyle; composante/Ressources/OfficeStyleWindow.xaml

+0

Cela n'a aucun effet .. –

Questions connexes