wpf - 如何解决 Blend 4 中嵌入式用户控件中的设计时静态资源

标签 wpf c#-4.0 user-controls expression-blend-4

短版
您如何处理嵌入到其他窗口/用户/自定义控件中的 UserControl 中的静态资源查找?这样 Blend 4 就可以在设计时正确呈现它,Visual Studio 已经为您做了一些事情。

长版
正如问题所暗示的那样,我们有一个包含一些嵌入式用户控件的窗口,并且该窗口以及每个嵌入式用户控件都使用静态资源标记扩展来解析对在 app.xaml 文件中的合并字典中找到的资源的引用。

Blend 在单独打开时加载和渲染我在 VS Designer Surface 中制作的任何示例用户控件都没有问题。解决我几乎无处不在的无数静态资源标记扩展没有问题。

每当我尝试打开我的“MainWindow.xml”(一个窗口控件)时,我注意到我得到了 4 - 无法创建类型的实例 Blend 4 的错误在 ArtBoard 上很好地告诉我它已经捕获了一些设计时异常。通过将 VS 调试器实例附加到 Blend 来进一步深入研究这些异常,我注意到我引用的每个静态资源,它都提示找不到它。

作为比较,我查看了我创建的自定义控件,它根本没有使用任何静态资源,而是使用本地资源。这个自定义控件嵌入到 UserControl 中时,我注意到效果很好。我认为原因很明显!

有没有人知道如何解决这个问题?我尝试了整个“添加设计时词典”<-- 部分工作,嵌入式用户控件仍然没有创建!

研究

  • MVVM Light + Blend designer view error: Cannot find resource named 'Locator'
  • Theming using resources without Blend vomitting

  • 更新:可能的解决方案:
  • 采用此处介绍的类似方法:GianlucaCucco Answer
  • 将所有静态资源查找转换为 UserControls 的本地资源?
  • 将所有静态资源查找转换为动态资源。

  • 这些解决方案都不是很好。 = (

    最佳答案

    试试 this answer ——这听起来像是一个类似的问题。我还没有机会使用它,所以我很想知道它是否适合你。它肯定没有其他解决方案那么困惑。

    关于wpf - 如何解决 Blend 4 中嵌入式用户控件中的设计时静态资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10934324/

    相关文章:

    javascript - 在 JavaScript 中从套接字获取消息时出错

    jquery - 如何在运行时将 Kendo Grid 与 System.Data.DataTable 绑定(bind)

    asp.net-mvc - 如何在 Razor 中获得选定的单选按钮

    c# - 我可以在没有 runat ="server"的情况下从用户控件修改 .NET 中页面的 <head/> 部分吗?

    c# - 添加 x :Name to a user control gives error in generated code of page its used in

    c# - 如何获取 mshtml.IHTMLSelectionObject 的开始和结束位置?

    c# - 错误: exception of type 'System.NullReferenceException' occurred in exe

    c# - 为高对比度主题重新设计 AvalonDock?

    c# - WPF AlternateContent 不工作

    wpf - WPF UserControl 的大小调整速度极其缓慢