Compartilhar via


ResourceDictionary Classe

Definição

Fornece uma implementação de tabela/dicionário de hash que contém recursos do WPF usados por componentes e outros elementos de um aplicativo 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
Herança
ResourceDictionary
Derivado
Atributos
Implementações

Comentários

Os itens em um ResourceDictionary não são processados imediatamente quando o código do aplicativo é carregado por um carregador XAML. Em vez disso, os ResourceDictionary persistem como um objeto e os valores individuais são processados somente quando são solicitados especificamente.

A ResourceDictionary classe não é derivada de DictionaryBase. Em vez disso, a ResourceDictionary classe implementa IDictionary , mas depende de um Hashtable interno.

Em XAML (Extensible Application Markup Language), a ResourceDictionary classe normalmente é um elemento de coleção implícita que é o valor do elemento objeto de várias Resources propriedades, quando fornecido na sintaxe do elemento de propriedade. Para obter detalhes sobre coleções implícitas em XAML, consulte A sintaxe XAML em detalhes. Uma exceção é quando você deseja especificar um dicionário mesclado; para obter detalhes, consulte Dicionários de Recursos Mesclados.

Outro uso possível de XAML é declarar um dicionário de recursos como um arquivo XAML discreto e carregá-lo em tempo de execução com Load ou incluí-lo em um projeto (de confiança total) como um recurso ou um arquivo flexível. Nesse caso, ResourceDictionary pode ser declarado como um elemento de objeto, servindo como o elemento raiz do XAML. Você deve mapear os valores de namespace XML apropriados (padrão para o namespace do WPF e, normalmente x: , para o namespace XAML) para o ResourceDictionary elemento se você planeja usá-lo como o elemento raiz. Em seguida, você pode adicionar elementos filho que definem os recursos, cada um com um valor x:Key .

Uso da coleção implícita XAML

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

Valores XAML

resourcesProperty Uma propriedade que especifica um elemento de propriedade, em que o tipo de valor dessa propriedade é ResourceDictionary. Normalmente, essa é a Resources propriedade de FrameworkElement ou FrameworkContentElement, ou de em um caso de recursos de Application aplicativo.

oneOrMoreResources Um ou mais recursos especificados como elementos de objeto. Cada recurso especificado deve ter uma diretiva x:Key atribuída.

Construtores

Nome Description
ResourceDictionary()

Inicializa uma nova instância da classe ResourceDictionary.

Propriedades

Nome Description
Count

Obtém o número de entradas na base ResourceDictionary.

DeferrableContent

Obtém ou define o conteúdo adiável para este dicionário de recursos.

InvalidatesImplicitDataTemplateResources

Obtém ou define um valor que indica se as invalidações disparadas pelo objeto fazem ContentPresenter com que os ResourceDictionary objetos reavaliam sua escolha de modelo. As invalidações ocorrem quando um recurso de modelo de dados implícito é alterado.

IsFixedSize

Obtém se isso ResourceDictionary é de tamanho fixo.

IsReadOnly

Obtém se isso ResourceDictionary é somente leitura.

Item[Object]

Obtém ou define o valor associado à chave fornecida.

Keys

Obtém uma coleção de todas as chaves contidas neste ResourceDictionary.

MergedDictionaries

Obtém uma coleção de ResourceDictionary dicionários que constituem os vários dicionários de recursos nos dicionários mesclados.

Source

Obtém ou define o URI (uniform resource identifier) do qual carregar recursos.

Values

Obtém uma coleção de todos os valores associados às chaves contidas neste ResourceDictionary.

Métodos

Nome Description
Add(Object, Object)

Adiciona um recurso por chave a isso ResourceDictionary.

BeginInit()

Inicia a fase de inicialização para esta ResourceDictionary.

Clear()

Limpa todas as chaves (e valores) na base ResourceDictionary. Isso não limpa nenhum item de dicionário mesclado.

Contains(Object)

Determina se ele ResourceDictionary contém um elemento com a chave especificada.

CopyTo(DictionaryEntry[], Int32)

Copia os ResourceDictionary elementos para um unidimensional DictionaryEntry no índice especificado.

EndInit()

Encerra a fase de inicialização e invalida a árvore anterior de modo que todas as alterações feitas nas chaves durante a fase de inicialização possam ser contabilizados.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
FindName(String)

Não há suporte para essa implementação de Dicionário.

GetEnumerator()

Retorna um IDictionaryEnumerator que pode ser usado para iterar por meio do ResourceDictionary.

GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
OnGettingValue(Object, Object, Boolean)

Ocorre quando o ResourceDictionary recurso recebe uma solicitação.

RegisterName(String, Object)

Não há suporte para essa implementação de Dicionário.

Remove(Object)

Remove a entrada com a chave especificada do dicionário base.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
UnregisterName(String)

Não há suporte para essa implementação de Dicionário.

Implantações explícitas de interface

Nome Description
ICollection.CopyTo(Array, Int32)

Para obter uma descrição deste membro, consulte CopyTo(Array, Int32).

ICollection.IsSynchronized

Para obter uma descrição deste membro, consulte IsSynchronized.

ICollection.SyncRoot

Para obter uma descrição deste membro, consulte SyncRoot.

IEnumerable.GetEnumerator()

Para obter uma descrição deste membro, consulte GetEnumerator().

IUriContext.BaseUri

Para obter uma descrição deste membro, consulte BaseUri.

Métodos de Extensão

Nome Description
AsParallel(IEnumerable)

Habilita a paralelização de uma consulta.

AsQueryable(IEnumerable)

Converte um IEnumerable em um IQueryable.

Cast<TResult>(IEnumerable)

Converte os elementos de um IEnumerable para o tipo especificado.

OfType<TResult>(IEnumerable)

Filtra os elementos de um IEnumerable com base em um tipo especificado.

Aplica-se a

Confira também