As far as I know, this is not an specific feature of Prism
Based on my understanding, during run-time, the resources defined in the
file of the main project become available for any component of the application (any resource defined in other
files of other projects will be ignored.) Regardless from where the components are defined (main project, class library, etc...) they form part of the running application and therefore they will use the resources defined in it.
However, this might differ during design-time when using the designer. Based on my understanding, it seems that if the main project has a reference to the module (like the
project to the StockTraderRI.Modules.News
module) and said module is a class library, visual studio assumes that the main project is the entry point of the application and it loads its resources when using the
designer, allowing you to see the effects of the style in design-time. You can check this by removing the reference in the
project, cleaning the solution and restarting visual studio. You should see that the
no longer finds the TextBlockSectionTitle
The result of this is that, if you have a module that is not directly referenced by your main project and is loosely loaded, then you would not be able to see the effects of using a style or resource in it that was defined in the main project during design-time.
However, those should be correctly applied during run-time in the components of the module.
Regarding this subject, I believe you could find the following article of the
I hope this helps,