ResourceDictionary Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет реализацию хэш-таблицы или словаря, содержащую ресурсы WPF, которые используются компонентами и другими элементами приложения WPF.
public ref class ResourceDictionary : System::Collections::IDictionary, System::ComponentModel::ISupportInitialize, System::Windows::Markup::INameScope, System::Windows::Markup::IUriContext
[System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)]
public class ResourceDictionary : System.Collections.IDictionary, System.ComponentModel.ISupportInitialize, System.Windows.Markup.INameScope, System.Windows.Markup.IUriContext
[System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)]
[System.Windows.Markup.Ambient]
[System.Windows.Markup.UsableDuringInitialization(true)]
public class ResourceDictionary : System.Collections.IDictionary, System.ComponentModel.ISupportInitialize, System.Windows.Markup.INameScope, System.Windows.Markup.IUriContext
[<System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)>]
type ResourceDictionary = class
interface IDictionary
interface ICollection
interface IEnumerable
interface INameScope
interface ISupportInitialize
interface IUriContext
[<System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)>]
[<System.Windows.Markup.Ambient>]
[<System.Windows.Markup.UsableDuringInitialization(true)>]
type ResourceDictionary = class
interface IDictionary
interface ICollection
interface IEnumerable
interface ISupportInitialize
interface IUriContext
interface INameScope
[<System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)>]
[<System.Windows.Markup.Ambient>]
[<System.Windows.Markup.UsableDuringInitialization(true)>]
type ResourceDictionary = class
interface ICollection
interface IEnumerable
interface IDictionary
interface ISupportInitialize
interface INameScope
interface IUriContext
Public Class ResourceDictionary
Implements IDictionary, INameScope, ISupportInitialize, IUriContext
- Наследование
-
ResourceDictionary
- Производный
- Атрибуты
- Реализации
Комментарии
Элементы в объекте ResourceDictionary не обрабатываются немедленно при загрузке кода приложения загрузчиком XAML. Вместо этого сохраняется ResourceDictionary как объект, а отдельные значения обрабатываются только в том случае, если они запрашиваются специально.
Класс ResourceDictionary не является производным от DictionaryBase. Вместо этого ResourceDictionary класс реализует IDictionary , но полагается на внутренний Hashtable .
В языке ResourceDictionary XAML класс обычно является неявным элементом коллекции, который является значением элемента объекта нескольких Resources
свойств при указании синтаксиса элемента свойства. Дополнительные сведения о неявных коллекциях в XAML см. в описании синтаксиса XAML. Исключение заключается в том, что требуется указать объединенный словарь; Дополнительные сведения см. в разделе объединенных словарей ресурсов.
Другое возможное использование XAML — объявить словарь ресурсов как дискретный XAML-файл и загрузить его во время Load выполнения или включить его в проект (с полным доверием) как ресурс или свободный файл. В этом случае ResourceDictionary можно объявить как объектный элемент, который служит корневым элементом XAML. Если планируется использовать его в качестве корневого элемента, необходимо сопоставить соответствующие значения пространства имен XML (по умолчанию для пространства имен WPF и обычно x:
для пространства имен XAML).ResourceDictionary Затем можно добавить дочерние элементы, определяющие ресурсы, каждый из которых имеет значение x:Key .
Неявное использование коллекции XAML
<object>
<object.resourcesProperty>
oneOrMoreResources
</object.resourcesProperty>
</object>
Значения XAML
resourcesProperty
Свойство, указывающее элемент свойства, где тип значения этого свойства .ResourceDictionary Как правило, это Resources
свойство FrameworkElement или FrameworkContentElement( или Application ) в случае ресурсов приложения.
oneOrMoreResources
Один или несколько ресурсов, указанных как элементы объекта. У каждого указанного ресурса должна быть назначена директива x:Key .
Конструкторы
ResourceDictionary() |
Инициализирует новый экземпляр класса ResourceDictionary. |
Свойства
Count |
Возвращает количество записей в базовом словаре ResourceDictionary. |
DeferrableContent |
Получает или задает содержимое, допускающее задержку, для этого словаря ресурсов. |
InvalidatesImplicitDataTemplateResources |
Получает или задает значение, указывающее, приводят ли недействительности, инициируемые объектом ContentPresenter, к перепроверке выбранного шаблона объектами ResourceDictionary. Недействительности возникают при неявном изменении ресурса шаблона данных. |
IsFixedSize |
Возвращает значение, которое показывает, имеет ли словарь ResourceDictionary фиксированный размер. |
IsReadOnly |
Возвращает значение, которое показывает, доступен ли словарь ResourceDictionary только для чтения. |
Item[Object] |
Возвращает или задает значение, связанное с данным ключом. |
Keys |
Возвращает коллекцию всех ключей, содержащихся в данном объекте ResourceDictionary. |
MergedDictionaries |
Получает коллекцию словарей ResourceDictionary, представляющих собой различные словари ресурсов в объединенных словарях. |
Source |
Получает или задает универсальный код ресурса (URI) для загрузки ресурсов. |
Values |
Возвращает коллекцию всех значений, связанных с ключами в данном словаре ResourceDictionary. |
Методы
Add(Object, Object) |
Добавляет ресурс по ключу для данного класса ResourceDictionary. |
BeginInit() |
Начинается этап инициализации для данного объекта ResourceDictionary. |
Clear() |
Удаляет все ключи (и значения) в базовом объекте ResourceDictionary. Это не приводит к удалению элементов объединенного словаря. |
Contains(Object) |
Определяет, содержится ли элемент с указанным ключом в ResourceDictionary. |
CopyTo(DictionaryEntry[], Int32) |
Копирует элементы класса ResourceDictionary в одномерный массив класса DictionaryEntry с указанного индекса. |
EndInit() |
Завершается этап инициализации, что делает недействительным предыдущее дерево. Это позволяет учесть все изменения ключей, выполненные во время этапа инициализации. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
FindName(String) |
Не поддерживается этой реализацией словаря. |
GetEnumerator() |
Возвращает объект IDictionaryEnumerator, который может использоваться выполнения итерации по элементам словаря ResourceDictionary. |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
OnGettingValue(Object, Object, Boolean) |
Возникает, когда ResourceDictionary получает запрос на ресурс. |
RegisterName(String, Object) |
Не поддерживается этой реализацией словаря. |
Remove(Object) |
Удаляет запись с указанным ключом из базового словаря. |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
UnregisterName(String) |
Не поддерживается этой реализацией словаря. |
Явные реализации интерфейса
ICollection.CopyTo(Array, Int32) |
Описание этого члена см. в разделе CopyTo(Array, Int32). |
ICollection.IsSynchronized |
Описание этого члена см. в разделе IsSynchronized. |
ICollection.SyncRoot |
Описание этого члена см. в разделе SyncRoot. |
IEnumerable.GetEnumerator() |
Описание этого члена см. в разделе GetEnumerator(). |
IUriContext.BaseUri |
Описание этого члена см. в разделе BaseUri. |
Методы расширения
Cast<TResult>(IEnumerable) |
Приводит элементы объекта IEnumerable к заданному типу. |
OfType<TResult>(IEnumerable) |
Выполняет фильтрацию элементов объекта IEnumerable по заданному типу. |
AsParallel(IEnumerable) |
Позволяет осуществлять параллельный запрос. |
AsQueryable(IEnumerable) |
Преобразовывает коллекцию IEnumerable в объект IQueryable. |