Search code examples
silverlightxamlexpression-blend

ExpressionBlend exception when UserControl contains my custom control


I can edit this UserControl just fine in visual studio but I get this strange exception in expression blend. Does anybody know what should I look for?

enter image description here

UPDATE

I wasn't able to figure how to debug/attach. I did everything as instructed by Mike but no breakpoints got hit. I did more investigation and found that most likely my issue related to themes/generic.xaml

My visual studio solution has project named Infrastructure.dll. Inside that project I have folder themes and inside I have file generic.xaml. Generic.xaml set to compile as resource. My control class lives in a same project.

I have another project named 'Module.dll' and that project references Infrastructure.dll

  1. When I open view with my control (view is from Infrastructure.dll) it works in Visual Studio but gives this error in Blend.
  2. I can drag/drop control in Blend and it would give same error. I tried to remove line where I apply template to control (template in generic.xaml) and it works.
  3. Template is good, I created it using Blend and copied to generic.xaml myself.
  4. When I create view INSIDE Infrastructure.dll and drop my control on that view - it works.

So, my conclusion is that Blend doesn't see template inside generic.xaml that lives in referenced project. How do I fix this?


Solution

  • Issue was definitely related to Blend's inability to read/locate generic.xaml Visual studio doesn't have this issue btw. I found workaround for now - will gladly accept another answer if I can avoid doing that..

    After I add resource reference to view - everything works in Blend. This means I have to add this XAML to all my views..

    <UserControl.Resources>
            <ResourceDictionary>
                <ResourceDictionary.MergedDictionaries>
                    <ResourceDictionary Source="/Infrastructure.SL;component/Themes/generic.xaml"/>
                </ResourceDictionary.MergedDictionaries>