Comment : obtenir et définir des ressources de portée application
Mise à jour : novembre 2007
Cet exemple montre comment obtenir et définir en même temps les ressources de portée d'application à l'aide de Resources.
Exemple
Application expose un magasin de portée d'application pour les ressources partagées : Resources. Les ressources stockées dans Resources sont disponibles à partir de tout code qui exécute dans la portée d'un objet d'application Application (c'est-à-dire un code qui peut accéder à Current). En outre, Resources sont utilisées dans le chemin d'accès de recherche de la ressource.
Resources est un dictionnaire des paires clé/valeur qui vous pouvez définir à la fois à partir de la balise et du code, comme ceci :
// Set an application-scope resource
Application.Current.Resources["ApplicationScopeResource"] = Brushes.White;
<Application.Resources>
<SolidColorBrush x:Key="ApplicationScopeResource" Color="White"></SolidColorBrush>
</Application.Resources>
Vous utilisez le code pour obtenir une ressource :
// Get an application-scope resource
Brush whiteBrush = (Brush)Application.Current.Resources["ApplicationScopeResource"];
Il y a deux considérations à faire lors de l'utilisation de Resources. En premier lieu, la clé de dictionnaire est un objet, vous devez donc utiliser exactement la même instance d'objet lors du paramétrage et de l'obtention d'une valeur de propriété (notez que la clé respecte la casse lors de l'utilisation d'une chaîne). En second lieu, la valeur de dictionnaire est un objet, vous devrez donc convertir la valeur en type souhaité lors de l'obtention d'une valeur de propriété.