ResourceDictionary.MergedDictionaries 属性

定义

获取构成合并字典中各种资源字典的 ResourceDictionary 字典的集合。

public:
 property IVector<ResourceDictionary ^> ^ MergedDictionaries { IVector<ResourceDictionary ^> ^ get(); };
IVector<ResourceDictionary> MergedDictionaries();
public IList<ResourceDictionary> MergedDictionaries { get; }
var iVector = resourceDictionary.mergedDictionaries;
Public ReadOnly Property MergedDictionaries As IList(Of ResourceDictionary)
<ResourceDictionary>
  <ResourceDictionary.MergedDictionaries>
    oneOrMoreResourceDictionaryElements
  </ResourceDictionary.MergedDictionaries>
</ResourceDictionary>

属性值

构成合并字典中各种资源字典的 ResourceDictionary 字典的列表集合。

示例

使用 C++ 或 C# 的 Windows 应用 SDK 应用的起始 Microsoft Visual Studio 模板在 app.xaml 文件中包含一个MergedDictionaries节点。 这会在包含一些基本控件模板定义的项目中引用单独的 XAML ResourceDictionary 。 可以在 ResourceDictionary 中修改 XAML,以自定义控件的外观。

<Application
    ....
>
    <Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="Common/StandardStyles.xaml"/>
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>
    </Application.Resources>
</Application>

注解

MergedDictionaries设置值可以在多个页面之间共享 ResourceDictionary XAML 文件,也可以将其作为可添加到多个应用项目的通用文件。 从开发和设计的角度来看,这为资源提供了有用的分解和重用技术。 通常,将 XAML 文件作为 内容 项包含在项目和应用清单中。

任何 MergedDictionaries XAML 中的键控资源不必与 Application.ResourcesFrameworkElement.Resources 的主 ResourceDictionary 中找到的键是唯一的,键的查找顺序将首先在主字典中查找。 这样就可以使用一种技术来替代从 MergedDictionaries XAML 文件中获取的任何键值,但也可以将合并的字典用作回退或一组常规的非自定义资源。

可以在一个MergedDictionaries集中包含多个 ResourceDictionary,以便在集中提供回退序列MergedDictionaries

有关如何使用 MergedDictionaries 和资源查找序列的详细信息,请参阅 ResourceDictionary 和 XAML 资源引用

ThemeDictionaries 是一个相关属性,它还将其他 XAML ResourceDictionary 源合并到整体键控资源集中,其中方案用于为控件提供与主题相关的资源。

更改 的 ResourceDictionaryMergedDictionaries 集合的内容并不常见。 通常,在 XAML 中建立集合内容,并且不会在运行时对其进行更改。 在运行时代码中访问集合本身的情况并不多。 通常依赖于在 XAML 加载时发生的内置资源查找,或者查询可按键引用资源的相关 Application.ResourcesFrameworkElement.Resources 集合,包括合并的资源。

适用于

另请参阅