项目B.主题
项目B.Themes使用A.Themes并具有新的样式,一些资源具有A.Themes中已经定义的键。
A、 主题几乎没有样式文件:
Brushes.xaml
Buttons.xaml
CheckBox.xaml
等
我们把它们捆起来。Xaml:
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/A.Themes;component/Assets/Brushes.xaml"/>
<ResourceDictionary Source="pack://application:,,,/A.Themes;component/Assets/Buttons.xaml"/>
<ResourceDictionary Source="pack://application:,,,/A.Themes;component/Assets/CheckBox.xaml" />
</ResourceDictionary.MergedDictionaries>
按钮。xaml
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/A.Themes;component/Bundle.xaml"/>
<ResourceDictionary Source="pack://application:,,,/B.Themes;component/Assets/Brushes.xaml"/>
<ResourceDictionary Source="pack://application:,,,/B.Themes;component/Assets/Buttons.xaml"/>
<ResourceDictionary Source="pack://application:,,,/B.Themes;component/Assets/CheckBox.xaml" />
</ResourceDictionary.MergedDictionaries>
在我们的项目中,我们将它们加载到应用程序中。xaml:
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/A.Themes;component/Bundle.xaml"/>
<ResourceDictionary Source="pack://application:,,,/B.Themes;component/Bundle.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
问题是:
1.B.Themes的资源并不总是被占用,我们无法找到原因。
2.如果我删除对A.Themes/Bundle的引用。来自应用程序的xaml。xaml项目无法从A.Themes中找到资源,即使它包含在B.Themes/Bundle中。xaml
我们参考了B.Themes中的A.Themes项目
并参考主项目中的A.主题和B.主题
谢谢