none
Visual Studio 2012 WPF Designer & Satellite Assemblies

    Question

  • Dear all,

    I'm developing a localization extension for WPF and other Frameworks based on MarkupExtension with design-time support. This worked well for VS 2010.

    Beginning with VS2012 (and earlier with Blend) I experienced a strange behaviour of the WPF designer: It only loads one additional satellite assembly (apparently the first one of all available ones sorted by their names). The others are not included. As this still works well in run-time (all satellite assemblies are well created and fully functional), I've debugged into this: The designer process creates a shadow cache of the programm and includes only one additional satellite assembly, under:

    \AppData\Local\Microsoft\VisualStudio\11.0\Designer\ShadowCache

    So the question is: Is this behaviour "by design" and if yes, how can I tell the designer process to copy all satellite assemblies to the shadow cache.

    Thank you in advance.

    Best regards,

    Uwe Mayer



    • Edited by Uwe Mayer Monday, April 08, 2013 7:02 AM More precise location: ShadowCache
    Friday, April 05, 2013 1:47 PM

All replies

  • I would guess you might be able to work round this using the designtimeresources.xaml and add the references to your files there.

    Friday, April 05, 2013 3:00 PM
  • Hi,

    Thank you for the quick reply. I tried getting this to work but stumbled over the following issues:

    • I only found references to "designtimeresources.xaml" in forums & posts regarding Blend and not VS 2012. This seems to be only a partial solution to my problem.
    • This file is intended to be a resource dictionary. How can I reference the post-build sattelite assemblies for all used languages there? Can I reference DLLs?

    Anyway, if there are other thoughts on this topic, they are very welcome.

    Best regards,

    Uwe Mayer

    Sunday, April 07, 2013 12:57 PM
  • Hi Uwe Mayer,

    Thanks for posting.

    Could you please share a minimum project to help us reproduce this issue? I will route the issue to experts in this area for investigation.

    Best regards,


    Min Zhu
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    Monday, April 08, 2013 5:18 AM
    Moderator
  • Hi Min Zhu,

    thank you for your help. I've uploaded the example solution to a work item on our codeplex project at:

    https://wpflocalizeextension.codeplex.com/workitem/9269

    All prerequisites are included. Just open the designer and have a look at the contents of the ShadowCache directory. There should be satellite assemblies for the de, es and fr languages. During runtime everything works fine.

    Additionally, I edited the initial question to be more precise on the location of the files during design time:

    \AppData\Local\Microsoft\VisualStudio\11.0\Designer\ShadowCache

    Best regards,

    Uwe Mayer

    Monday, April 08, 2013 7:06 AM
  • Hi Uwe Mayer,

    I am trying to involve someone familiar with this topic to further look at this issue. There might be some time delay. Appreciate your patience.
     
    Thank you for your understanding and support.


    Min Zhu
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    Monday, April 08, 2013 9:55 AM
    Moderator
  • Hi Min Zhu,

    May I kindly ask about the progress of this issue? Thank you for your support.

    Best regards,

    Uwe Mayer

    Monday, May 06, 2013 8:55 PM
  • Hi Uwe,

    Sorry for the delay. It turns out I have send the wrong URL to my colleague so they haven't seen the thread yet. I will update them now. Sorry for the inconvenience it causes.

    Best regards,


    Min Zhu
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    Tuesday, May 07, 2013 1:50 AM
    Moderator
  • Hi there,

    so have you tried winform app? does this behavior still exist?

    Or how about the result after copying those assembles to \AppData\Local\Microsoft\VisualStudio\11.0\Designer\ShadowCache manually?

    Or you can capture process monitor trace to compare the behavior of vs2010 and vs2012?

    http://blogs.technet.com/b/appv/archive/2008/01/24/process-monitor-hands-on-labs-and-examples.aspx

    Regards,

    Jenny


    Thursday, May 09, 2013 8:41 AM
  • Hi Jenny,

    this problem does not apply to winform apps, because the use of the localization library is limited to WPF and Silverlight.

    Copying the required satellite assembly files manually to the ShadowCache does not solve the issue - VS seems to ignore the files (I tried copying it to every single subdirectory).

    Unfortunately, I cannot capture the VS2010 behaviour because I completely switched to VS2012 on my dev system. Nevertheless, I can provide you a Log of VS2012. Which actions should be performed for this log and where can I send it to (I don't want to post it in this thread)?

    Best regards,

    Uwe

    Friday, May 10, 2013 11:52 PM
  • then how about the result of Silverlight? And you are supposed to try to analyze procmon logs..following some guidelines like http://blogs.technet.com/b/appv/archive/2008/01/24/process-monitor-hands-on-labs-and-examples.aspx

    Regards,

    jenny

     
    Wednesday, May 15, 2013 8:24 AM
  • Hi Jenny,

    Sorry for the delay due to holidays.

    The problem also exists in the Silverlight XAML editor. I've searched a whole procmon log for messages regarding this issue and did not find any problem. It just seems as if the designer does not copy satellite assemblies to the ShadowCache.

    Best regards,

    Uwe

    Tuesday, May 21, 2013 7:20 PM
  • Hi Jenny,

    Do you have any news on that topic. A lot of the users of the affected popular extension on codeplex are already complaining about this issue.

    Thanks for your support.

    Best regards,

    Uwe

    Tuesday, July 09, 2013 8:09 PM
  • This issue is also affecting users of another popular open source markup extension for localizing WPF XAML:

    http://www.codeproject.com/Articles/35159/WPF-Localization-Using-RESX-Files

    This clearly seems to be a bug in the way XDesProc shadow copies assemblies (in that it doesn't copy satellite assemblies) and should be fairly easy to fix.   

    Saturday, February 15, 2014 1:07 AM