3

基本上,我想将所有 XAML 资源保存在外部程序集中(用于我的样式)。我的应用程序中有这个外部程序集的引用。

是否与附属程序集或诸如此类的东西有关,或者我如何访问这些样式,以便我的应用程序仍然可以具有 StaticResource 标记而不会出现编译错误?

4

1 回答 1

5

假设您将样式保存在ResourceDictionary另一个程序集中的 a 中,您只需要将其与您当前的资源合并(无论它们是在 a 上Window还是UserControl其他任何地方)。

如果我们假设

  • 您的另一个程序集被命名为“external.assembly.name”
  • ResourceDictionary命名空间资源下;和
  • 字典名为“MyStyles.xaml”

...然后你可以合并字典如下:

<UserControl.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary 
              Source="pack://application:,,,/external.assembly.name;component/Resources/MyStyles.xaml" />
        </ResourceDictionary.MergedDictionaries>
        <!-- other resources go here -->
    </ResourceDictionary>
</UserControl.Resources>
于 2011-10-07T15:55:20.213 回答