Como: Get and Set Application-Scope Resources
Este exemplo mostra como obter e definir recursos em escopo de aplicativo usando Resources.
Exemplo
Application expõe um armazenamento de escopo de aplicativo para recursos compartilhados: Resources. Recursos armazenados no Resources estão disponível a partir de qualquer código executado dentro do escopo de um aplicativo Application objeto (ou seja código que pode acessar Current). Além disso, Resources é utilizado no caminho de consulta de recursos.
Resources é um dicionário de pares chave/valor que você pode definir a partir tanto de marcação como código, assim:
// Set an application-scope resource
Application.Current.Resources["ApplicationScopeResource"] = Brushes.White;
<Application.Resources>
<SolidColorBrush x:Key="ApplicationScopeResource" Color="White"></SolidColorBrush>
</Application.Resources>
Código para obter um recurso:
// Get an application-scope resource
Brush whiteBrush = (Brush)Application.Current.Resources["ApplicationScopeResource"];
Duas considerações devem ser feitas ao se usar Resources. Primeiro, a chave do dicionário é um objeto, então você precisa utilizar exatamente a mesma instância de objeto quando estiver definindo e obtendo o valor de uma propriedade (note que a chave diferencia maiúsculas de minúsculas quando usando uma string). Segundo, o valor do dicionário é um objeto, então você precisará converter o valor para o tipo desejado quando estiver obtendo o valor de uma propriedade.