I am making a generic way for getting the IValueConverter types within all projects in my solution.
So, there is a markup extension called ConverterExtension, that is located in a separate referenced project. In other projects, when I use this extension in XAML, it should list all the converter types (implementing IValueConverter or IMultiValueConverter) that are available in that assembly and in its referenced assemblies (for example Views project references the Themes project, and the assembly with that markup extension. So, the markup extension should list at least all converter types that are in Views, Themes, and extension assembly).
Everything is fine at runtime, but in design-time the converters from referenced projects are not available.
I tried to use the following when building the converters list:
Assembly.GetCallingAssembly() - returns "Microsoft.Expression.WpfPlatform.dll"
Assembly.GetExecutingAssembly() - returns the library assembly that conains the markup extension
Assembly.GetEntryAssembly() - returns "XDesProc" (in runtime I am using this method - it returns the right assembly).
Also I took a look here: http://social.msdn.microsoft.com/Forums/vstudio/en-US/7ce628dd-9491-44cd-a7fc-3b6303fd47c3/get-all-dlls-referenced-in-the-project-at-design-time but this didn`t help at all, I already have such results.
To code or not to code?