Vermeidung von Visual Studio-designer-Fehler beim WPF-Ressource definiert, die in separaten Projekt

Wie kann ich vermeiden, dass die Visual Studio-designer-Fehler, wenn Sie eine WPF-Ressource definiert, die in separaten Projekt?

Habe ich drei Projekte in einem composite WPF-Anwendung: die Hauptanwendung, eine "Infrastruktur" Bibliothek " und ein "Modul" Bibliothek. Die Haupt-Anwendung verweist auf die anderen Projekte, die über den output-DLLs (die Projekte liegen nicht in einer einzigen Lösung zusammen).

Ich bin die Definition einer Haut (einige Pinsel und Stile in einem ResourceDictionary) in die "Infrastruktur" - Bibliothek. Ich möchte die Haupt-Anwendung wählen Sie eine Haut, und stellen Sie es zur Verfügung, um die gesamte Anwendung (über MergedDictionaries im App.xaml).

In meinem Modul, das ich verwenden möchte die Ressourcen definiert, die in der Haut, die die Haupt-Anwendung geladen wird. Wenn ich auf die Ressource verweisen, als ob es lokal verfügbar, wie z.B. diese:

Background={StaticResource MainBackgroundBrush}

fast alles funktioniert wie gewünscht. Die Ausnahme ist, dass die Visual Studio-designer Durcheinander kommt und sagt mir, dass "StaticResource-Referenz 'MainBackgroundBrush' wurde nicht gefunden". Diese effektiv verhindert, das ich mich mit dem designer.

Was kann ich tun, um zu definieren, eine "Haut" ResourceDictionary in einem Projekt, Referenz, dass die Haut in der Anwendung, und verwenden Sie dann Ihre Ressourcen in einem Modul Projekt?

  • Während dies nicht technisch beantworten Ihre Frage an alle, Expression Blend 2 macht keine Probleme mit der Doppel-Dereferenzierung lookup und macht Sie sich nur, finden in diesen speziellen Fällen in meiner Erfahrung.
  • In VS2010 Beta 1 können Sie immer noch die designer, wenn Sie nicht finden können, eine Ressource. Es gibt Ihnen eine Warnung und dann scheint zu ignorieren das Attribut.
InformationsquelleAutor M. Dudley | 2009-07-06
Schreibe einen Kommentar