As part of the team developing a custom application framework that will be given to 3rd party developers, I need to come up with a simple yet complete solution in order to let the developers customize views (A) and the main application layout (B) of our solutions.
For B, we will be using a custom UI composite approach (similar to Prism, but simpler), where the main application layout will be configurable by the 3rd parties.
As for A, we will create UserControls that need to be customized and perhaps completely "overridable" by the 3rd parties.
Proposed solutions:
i) Giving out the XAML code of the main layout file and the the UserControls (A and B). In the case of A, the 3rd party developers will be able to use a default UserControl (located lets say in Views/Default) or to completely override it by creating the same control in Views/Custom.
ii) Giving out the XAML code of the main layout file and the UserControls (A and B) and use IoC (Unity for example) to swap/extend them.
My questions:
1.- Any comments regarding the proposed solutions? Any other idea?
2.- Do you know of anyone who has developed something like this?
Besides, whatever We come up with it should work on WPF, Silverlight and ASP.net, as the framework support those three technologies. By this reuse of technologies, I mean the "publishing" mechanism, not reusing the XAML files among WPF/SL/ASP (makes no sense!)
Thanks,