| 

.NET C# Java Javascript Exception

4
In der CAL/Prism befinden sich normalerweise die Module in dem Ordner in dem sich die Rahmenapplikation befindet.

Ich jedoch, habe gerade das Scenario, dass ich die Module dynamisch lade (DirectoryModuleCatalog) und hier einen Ordner angebe, welcher sich Modules nennt und die Module befinden sich in diesem.

Also sieht bei mir die Struktur folgendermaßen aus:
MainApplication
Modules
ModuleA
ModuleB


Nun aber habe ich das Problem, das ich den Pfad nicht mehr zu meinem Modul kenne, wenn ich irgendwelche Resourcen laden möchte. vorher habe ich das so gemacht:
new Uri("pack://application:,,,/ModuleA;Component/Images/myPic.ico")

Wie aber komme ich nun an meinen Module-Ordner?!
Es kann Images/myPic.ico nicht gefunden werden... vielleicht wäre es hier auch nützlich zu wissen, in welchem Pfad der sich gerade befindet.
09.09.2009
Mario Priebe 6,0k 3 9
1 Antwort
3
Hi, die MSDN sagt dazu folgendes:
"The following example shows the pack URI for a XAML resource file that is located in the root of the local assembly's project folder."
pack://application:,,,/ResourceFile.xaml

bzw.

"The following example shows the pack URI for a XAML resource file that is located in the root folder of a referenced, version-specific assembly's project folder."
pack://application:,,,/ReferencedAssembly;v1.0.0.1;component/ResourceFile.xaml

(siehe MSDN:
en: http://msdn.microsoft.com/en-us/library/aa970069.aspx
de: http://msdn.microsoft.com/de-de/library/aa970069.aspx


...es geht also vom Project Ordner aus.

Allerdings funktioniert das nur mit Assemblies auf die schon referenziert wurde.

Grüßle
09.09.2009
Scout 1,4k 2 8
Scout 1,4k 2 8
Perfekt ich danke dir!
Ich hab nun: pack://application:,,,/ModuleA;component/Images/myPic.ico", UriKind.RelativeOrAbsolute
Mario Priebe 09.09.2009
Das funktioniert aber nur mit WPF und nicht mit Silverlight, oder? Zumindest knallts bei mir, wenn ich mit Silverlight das Protokoll pack:// aufrufen will...
Außerdem: Muss zwingend eine Referenz zu den Modulen bestehen? Gerade das will ich ja eigentlich vermeiden.
Jürgen Gutsch 30.03.2011
Hallo Jürgen, nein das weiß ich leider nicht, aber wenn Du dazu was gefunden hast, lass es mich bitte wissen : )
Mario Priebe 30.03.2011
Siehe: http://codekicker.de/fragen/images-Ressurcen-Prism-Modulen-Shell-anzeigen-prism-ressourcen-silverlight4/1514
Jürgen Gutsch 30.03.2011

Stelle deine .net-Frage jetzt!
TOP TECHNOLOGIES CONSULTING GmbH