Поделиться через


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 , составляющих различные словари ресурсов в объединенных словарях.

Примеры

Начальные шаблоны Microsoft Visual Studio для приложения UWP на C++, C# или Visual Basic включают узел MergedDictionaries в файле app.xaml. Это ссылается на отдельный XAML ResourceDictionary в проекте, который содержит некоторые определения базовых шаблонов элементов управления. Вы можете изменить XAML в ResourceDictionary , чтобы настроить внешний вид элементов управления.

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

Комментарии

Установка значения MergedDictionaries позволяет совместно использовать XAML-файл ResourceDictionary на нескольких страницах или в качестве общего файла, который можно добавить в несколько проектов приложений. Это обеспечивает полезный метод факторинга и повторного использования ресурсов с точки зрения разработки и проектирования. Как правило, xaml-файл включается как элемент Содержимое как часть проекта и манифеста приложения.

Ресурсы с ключами в XAML-коде MergedDictionaries не обязательно должны быть уникальными по сравнению с ключами, как указано в первичном resourceDictionary для Application.Resources или FrameworkElement.Resources, и порядок поиска ключей будет искаться в основном словаре. Это позволяет переопределить любое значение ключа, полученное из XAML-файлов MergedDictionaries, но объединенные словари также могут быть доступны в качестве резервного или общего набора ненастроенных ресурсов.

В набор MergedDictionaries можно включить несколько ResourceDictionary , чтобы обеспечить резервную последовательность даже в наборе MergedDictionaries.

Дополнительные сведения об использовании MergedDictionaries и последовательности поиска ресурсов см. в разделе Ссылки на ресурсы ResourceDictionary и XAML.

ThemeDictionaries — это связанное свойство, которое также объединяет дополнительные источники ResourceDictionary XAML в общий набор ресурсов с ключами, где сценарий предназначен для предоставления ресурсов, связанных с темой, для элементов управления.

Изменение содержимого коллекции элементов ResourceDictionary для MergedDictionaries не является распространенным сценарием. Как правило, содержимое коллекции устанавливается в XAML и не изменяется во время выполнения. Существует не так много сценариев, в которых можно получить доступ к самой коллекции в коде времени выполнения. Обычно вы используете встроенный поиск ресурсов, который выполняется во время загрузки XAML, или запрашиваете соответствующие коллекции Application.Resources или FrameworkElement.Resources , которые могут ссылаться на ресурсы по ключу, включая объединенные ресурсы.

Применяется к

См. также раздел