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. |