FrameworkElement.Resources Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém ou define o dicionário de recursos definido localmente.
public:
property System::Windows::ResourceDictionary ^ Resources { System::Windows::ResourceDictionary ^ get(); void set(System::Windows::ResourceDictionary ^ value); };
public System.Windows.ResourceDictionary Resources { get; set; }
[System.Windows.Markup.Ambient]
public System.Windows.ResourceDictionary Resources { get; set; }
member this.Resources : System.Windows.ResourceDictionary with get, set
[<System.Windows.Markup.Ambient>]
member this.Resources : System.Windows.ResourceDictionary with get, set
Public Property Resources As ResourceDictionary
Valor da propriedade
O dicionário atual de recursos definido localmente, em que cada recurso pode ser acessado por chave.
- Atributos
Comentários
Dicionários de recursos que podem ser definidos completamente ou parcialmente em XAML (Extensible Application Markup Language) normalmente são criados como um elemento de propriedade e normalmente estão no elemento raiz para qualquer página individual ou para o aplicativo. Colocar o dicionário de recursos nesse nível facilita a localização de elementos filho individuais na página (ou em qualquer página, no caso do aplicativo). Na maioria dos cenários de aplicativo, recomendamos que os estilos sejam definidos como elementos de objeto em um dicionário de recursos ou sejam definidos como recursos externos para que todo o recurso de estilo possa ser independente (essa abordagem ajuda a separar as responsabilidades do designer das responsabilidades do desenvolvedor separando os arquivos físicos que precisam ser editados).
Observe que essa propriedade retorna apenas o dicionário de recursos declarado diretamente dentro desse elemento. Isso é diferente do processo de pesquisa de recursos real, em que um elemento filho pode acessar qualquer um dos recursos definidos em cada elemento pai, pesquisando recursivamente para cima.
Os recursos também podem ser referenciados por código de dentro da coleção, mas lembre-se de que os recursos criados no XAML definitivamente não estarão acessíveis até que depois Loaded seja gerado pelo elemento que declara o dicionário. Na verdade, os recursos são analisados de forma assíncrona e nem mesmo o Loaded evento é uma garantia de que você pode referenciar um recurso definido por XAML. Por esse motivo, você geralmente só deve acessar recursos definidos por XAML como parte do código em tempo de execução ou por meio de outras técnicas XAML, como estilos ou referências de extensão de recurso para valores de atributo. Quando você acessa recursos por meio de código, ele é essencialmente equivalente a uma referência DynamicResource feita de XAML.
O subjacente ResourceDictionary dá suporte aos métodos necessários para adicionar, remover ou consultar recursos de dentro da coleção usando código. A Resources propriedade é configurável para dar suporte ao cenário de substituição completa da coleção de recursos de um elemento para ser um novo ou diferente ResourceDictionary.
Observe que a sintaxe XAML mostrada não inclui um elemento para o ResourceDictionary. Este é um exemplo de sintaxe de coleção implícita; uma marca que representa o elemento de coleção pode ser omitida. Em vez disso, os elementos adicionados como itens à coleção são especificados. Para obter mais informações sobre coleções implícitas e XAML, consulte Sintaxe XAML em detalhes. Um caso em que um ResourceDictionary ainda é especificado explicitamente como um elemento é se você estiver introduzindo um dicionário mesclado, nesse caso, normalmente não há elementos filho para esse ResourceDictionary. Para obter detalhes, consulte Dicionários de recursos mesclados.
Uso do elemento propriedade XAML
<object>
<object.Resources>
oneOrMoreResourceElements
</object.Resources>
</object>
Valores XAML
oneOrMoreResourceElements
Um ou mais elementos de objeto, cada um deles define um recurso. Cada elemento de propriedade de recurso dentro de cada ResourceDictionary deve ter um valor exclusivo para a Diretiva x:Key, que serve como a chave exclusiva quando os valores são recuperados do ResourceDictionary.