实际上,我有一个dll,它为我的应用程序提供了一个"styler“--它包含了我所有的基本样式,以及一个在应用程序上调用StylerFactory.DefaultStyler.ApplyStyles(this)的工厂--它将提供的ResourceDictionaries与现有的ResourceDictionaries合并。这样,我不需要组件中的所有基本样式,也不需要对sesource-xaml-文件的显式引用。
现在-虽然这真的很好。在我的问题中,设计时(显然)看不到样式:
的设计时显示中?
发布于 2009-11-02 17:09:32
在我看来,这是一个可以接受的方法。原因是我没见过更好的方法。
在我自己的例子中,我已经在运行时using the code I described here加载了资源字典,我认为它也可以用于从其他程序集加载资源。缺点是设计器不会首先运行此代码,这意味着默认情况下不会应用样式。
为了抵消这一点,我在我的每个<ResourceDictionary.MergedDictionaries>中添加了一个默认的<Window.Resources>定义,我需要在设计时编辑这些定义。虽然这最终是有点多余,这允许我有一个工作的设计时窗口,而适当的MergedDictionary可以在运行时稍后加载。也许你可以用这个找到一个更好的方法。
https://stackoverflow.com/questions/1662353
复制相似问题