类库中的全局资源

时间:2011-01-24 23:20:38

标签: silverlight resources

在Silverlight应用程序中,我们可以在App.xaml中定义资源,并且可以从任何XAML文档访问它们,而无需显式合并这些资源。

是否有类库的等效解决方案? 我在类库中创建了一个单独的资源字典,但在使用之前我必须按如下方式合并它。

<UserControl.Resources>
 <ResourceDictionary>
  <ResourceDictionary.MergedDictionaries>
   <ResourceDictionary Source="MyResources.xaml" />
  </ResourceDictionary.MergedDictionaries>
 </ResourceDictionary>
</UserControl.Resources>

有没有办法避免这种情况?在全球使用的资源的每个XAML文档中执行此操作相当繁琐。

1 个答案:

答案 0 :(得分:1)

我正要问同样的问题。不幸的是,你所描述的与我能够提出的非常接近。从理论上讲,似乎你应该能够将这些文件放入库的themes \ generic.xaml文件中,但是我无法做到这一点 - 可能我只是做了一些愚蠢的事情。我能做的最好的只是你所做的一个稍微缩短的变体,即省略MergedDictionaries语法:

<UserControl.Resources>
    <commonui:CommonStringsPublic x:Key="commonStrings" />
    <ResourceDictionary Source="/Alanta.Client.UI.Common;component/CommonResources.xaml" x:Key="commonResources" />
</UserControl.Resources>

我希望有人能指出我更好的解决方案: - )。