我有多个silverlight项目,我想使用相同的样式,配色方案和一些模板化对象.
我该如何做到这一点?
解决方法
一种方法是创建一个新的silverlight类库,它将是您的共享主题/样式程序集,将由其他silverlight项目引用.该程序集中将包含一个或多个
Resource Dictionary XAML文件,可以定义所有样式,画笔和模板.您甚至可以使用Style类的BasedOn属性设置一些级联样式层次结构.
然后,您可以使用MergedDictionaries将这些样式合并到App.xaml级别或页面级别的应用程序中.
<Application.Resources> <ResourceDictionary> <ResourceDictionary.MergedDictionaries> <ResourceDictionary Source="/SharedThemeAssembly;component/MyStyles.xaml"/> ...other ResourceDictionaries to merge in... </ResourceDictionary.MergedDictionaries> </ResourceDictionary> </Application.Resources>
然后,您将像通常的任何其他StaticResource一样引用共享样式/画笔.