Wpf 为什么Expression Blend 4找不到全局资源库中的资源

Wpf 为什么Expression Blend 4找不到全局资源库中的资源,wpf,expression-blend,styles,Wpf,Expression Blend,Styles,由于这个WPF项目的某些原因,我在Blend中遇到了以下异常: 当一个UserControl位于另一个UserControl或窗口中时,就会发生这种情况ItemBorder是链接到应用程序XAML文件的资源库中存在的样式。我将此资源或其库移动到何处并不重要。即使我将它直接放入正在使用它的UserControl,我也会得到这个异常。只有当我将其设置为本地值而不是资源时,此异常才会消失。此异常仅在混合中发生。它不会发生在VisualStudio中(我使用的是2010),也不会发生在我运行应用程序时

由于这个WPF项目的某些原因,我在Blend中遇到了以下异常:

当一个
UserControl
位于另一个
UserControl
窗口中时,就会发生这种情况
ItemBorder
是链接到应用程序XAML文件的资源库中存在的样式。我将此资源或其库移动到何处并不重要。即使我将它直接放入正在使用它的
UserControl
,我也会得到这个异常。只有当我将其设置为本地值而不是资源时,此异常才会消失。此异常仅在混合中发生。它不会发生在VisualStudio中(我使用的是2010),也不会发生在我运行应用程序时


我在这里已经穷途末路了。这个问题意味着我完全无法使用Expression Blend

是否尝试将其作为动态资源

我对决定静态与动态的规则不是特别清楚,甚至不能给出下面的答案,但在加载资源以将其从静态资源更改为动态资源时,它为我解决了许多问题


好吧,挖了一点后。这篇文章中的OP和你的情况非常相似。他的工作建议在用户控制级别合并资源字典,而不仅仅是通过App.xaml。

动态资源只是在设置后可以更改的资源。我想我可以试试这个,但我知道使资源动态化需要大量的资源,所以这并不是我项目的真正解决方案。我没有在设置资源后更改资源的案例,但我仍然有通过DynamicSource经常引用的资源。当您在Blend中引用资源时,您是通过GUI还是手动插入它?这是一个在我们使用Blend之前启动的项目。所以很多都是手工的,是的。在与其他项目一起使用blend之后,我再也不想回到这个问题上了。有没有可能您可以删除资源调用(如果您愿意,只需暂时注释它),然后尝试通过blend GUI查找资源。这样做了。我甚至(通过Blend GUI)将资源移动到使用它的文件中,它仍然给了我in designer异常。