Silverlight:外部DLL中的参考资源字典';s

Silverlight:外部DLL中的参考资源字典';s,silverlight,Silverlight,目前,我为各种不同的Silverlight前端提供了一些不同的解决方案,其中一个包含另一个专门用于样式资源的Silverlight项目。正如您所想象的,我想将其分解为自己的解决方案,并从GUI解决方案中引用它。在WPF中,您将引用通用样式dll并使用包语法加载xaml资源文件,但是在Silverlight中,该语法不受支持,并且无法找到在App.xaml中作为资源字典引用的xaml文件。有人做到了吗?杰里米·利克内斯写了一篇关于使用主题项目的文章。他还介绍了如何动态加载主题。我们在几个Silve

目前,我为各种不同的Silverlight前端提供了一些不同的解决方案,其中一个包含另一个专门用于样式资源的Silverlight项目。正如您所想象的,我想将其分解为自己的解决方案,并从GUI解决方案中引用它。在WPF中,您将引用通用样式dll并使用包语法加载xaml资源文件,但是在Silverlight中,该语法不受支持,并且无法找到在App.xaml中作为资源字典引用的xaml文件。有人做到了吗?

杰里米·利克内斯写了一篇关于使用主题项目的文章。他还介绍了如何动态加载主题。我们在几个Silverlight项目中使用了这种技术,并取得了巨大成功

我认为您需要将样式解决方案合并为App.xaml中的合并字典

<Application.Resources>
<ResourceDictionary>
    <ResourceDictionary.MergedDictionaries>                                
        <ResourceDictionary Source="/MyApp.MyThemeProject;component/Theme.xaml"/>
    </ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>

我觉得你应该研究SL主题。DLL是根据主题创建的,您可以轻松地在多个项目/模块中使用

结果是其中一本词典出了问题,不过现在都分类了。谢谢你的意见

@jacksonakj对不起,我发了两封信。在我提交答案后,你的帖子出现在我面前。谢谢你的回复。这就是我目前拥有的,它之所以有效是因为主题项目在同一个解决方案中。现在,如果我将其分解为一个单独的解决方案,并将其引用到dll中,它将无法再找到作为相对uri的xaml资源字典。