ResourceDictionary Clase

Definición

Ofrece una implementación de diccionario o tabla hash que contiene recursos de WPF que usados por los componentes y otros elementos de una aplicación para 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
Herencia
ResourceDictionary
Derivado
Atributos
Implementaciones

Comentarios

Los elementos de un ResourceDictionary no se procesan inmediatamente cuando un cargador XAML carga el código de la aplicación. En su lugar, el ResourceDictionary objeto persiste como un objeto y los valores individuales solo se procesan cuando se solicitan específicamente.

La ResourceDictionary clase no se deriva de DictionaryBase. En su lugar, la ResourceDictionary clase implementa IDictionary pero se basa internamente en Hashtable .

En Extensible Application Markup Language (XAML), la ResourceDictionary clase suele ser un elemento de colección implícito que es el valor del elemento de objeto de varias Resources propiedades, cuando se proporciona en la sintaxis del elemento de propiedad. Para obtener más información sobre las colecciones implícitas en XAML, consulta Sintaxis XAML en detalle. Una excepción es cuando se desea especificar un diccionario combinado; para obtener más información, consulte Diccionarios de recursos combinados.

Otro posible uso de XAML es declarar un diccionario de recursos como un archivo XAML discreto y cargarlo en tiempo de ejecución con Load o incluirlo en un proyecto (de plena confianza) como un recurso o un archivo flexible. En este caso, ResourceDictionary se puede declarar como un elemento de objeto, que actúa como elemento raíz del XAML. Debes asignar los valores de espacio de nombres XML adecuados (valor predeterminado para el espacio de nombres WPF y normalmente x: para el espacio de nombres XAML) al ResourceDictionary elemento si planeas usarlo como elemento raíz. A continuación, puede agregar elementos secundarios que definen los recursos, cada uno con un valor x:Key .

Uso de colecciones implícitas XAML

<object>  
  <object.resourcesProperty>  
    oneOrMoreResources  
  </object.resourcesProperty>  
</object>  

Valores XAML

resourcesProperty
Propiedad que especifica un elemento de propiedad, donde el tipo de valor de esa propiedad es ResourceDictionary. Normalmente, esta es la Resources propiedad de FrameworkElement o FrameworkContentElement, o de en un caso de recursos de Application aplicación.

oneOrMoreResources
Uno o varios recursos especificados como elementos de objeto. Cada recurso que especifique debe tener asignada una directiva x:Key .

Constructores

ResourceDictionary()

Inicializa una nueva instancia de la clase ResourceDictionary.

Propiedades

Count

Obtiene el número de entradas del objeto ResourceDictionary base.

DeferrableContent

Obtiene o establece el contenido aplazable de este diccionario de recursos.

InvalidatesImplicitDataTemplateResources

Obtiene o establece un valor que indica si las invalidaciones desencadenadas por el objeto ResourceDictionary causan que los objetos ContentPresenter vuelvan a evaluar su elección de plantilla. Las invalidaciones se producen cuando cambia un recurso de una plantilla de datos implícita.

IsFixedSize

Obtiene un valor que indica si este ResourceDictionary es de tamaño fijo.

IsReadOnly

Obtiene un valor que indica si ResourceDictionary es de sólo lectura.

Item[Object]

Obtiene o establece el valor asociado a la clave dada.

Keys

Obtiene una colección de todas las claves contenidas en ResourceDictionary.

MergedDictionaries

Obtiene una colección de los diccionarios ResourceDictionary que constituyen los diversos diccionarios de recursos en los diccionarios combinados.

Source

Obtiene o establece el identificador uniforme de recursos (URI) desde donde se van a cargar recursos.

Values

Obtiene una colección de todos los valores asociados a claves contenidos en ResourceDictionary.

Métodos

Add(Object, Object)

Agrega un recurso por clave a este ResourceDictionary.

BeginInit()

Comienza la fase de la inicialización para ResourceDictionary.

Clear()

Borra todas las claves (y valores) en el objeto ResourceDictionary base. Esto no borra ningún elemento de diccionario combinado.

Contains(Object)

Determina si ResourceDictionary contiene un elemento con la clave especificada.

CopyTo(DictionaryEntry[], Int32)

Copia los elementos de ResourceDictionary a una DictionaryEntry unidimensional en el índice especificado.

EndInit()

Finaliza la fase de la inicialización e invalida el árbol anterior para que se pueda responder de todos los cambios realizados a las claves durante la fase de inicialización.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
FindName(String)

No admitido por la implementación de este diccionario.

GetEnumerator()

Devuelve un IDictionaryEnumerator que se puede usar para iterar ResourceDictionary.

GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
OnGettingValue(Object, Object, Boolean)

Se produce cuando ResourceDictionary recibe una solicitud de un recurso.

RegisterName(String, Object)

No admitido por la implementación de este diccionario.

Remove(Object)

Quita la entrada con la clave especificada del diccionario base.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
UnregisterName(String)

No admitido por la implementación de este diccionario.

Implementaciones de interfaz explícitas

ICollection.CopyTo(Array, Int32)

Para obtener una descripción de este miembro, vea CopyTo(Array, Int32).

ICollection.IsSynchronized

Para obtener una descripción de este miembro, vea IsSynchronized.

ICollection.SyncRoot

Para obtener una descripción de este miembro, vea SyncRoot.

IEnumerable.GetEnumerator()

Para obtener una descripción de este miembro, vea GetEnumerator().

IUriContext.BaseUri

Para obtener una descripción de este miembro, vea BaseUri.

Métodos de extensión

Cast<TResult>(IEnumerable)

Convierte los elementos de IEnumerable en el tipo especificado.

OfType<TResult>(IEnumerable)

Filtra los elementos de IEnumerable en función de un tipo especificado.

AsParallel(IEnumerable)

Habilita la paralelización de una consulta.

AsQueryable(IEnumerable)

Convierte una interfaz IEnumerable en IQueryable.

Se aplica a

Consulte también