J'ai plusieurs images configurées comme ressources d'application.Modifier l'image d'arrière-plan de la fenêtre WPF dans le code C#
Quand mon application démarre, l'arrière-plan de la fenêtre principale est réglée via XAML:
<Window.Background>
<ImageBrush ImageSource="/myapp;component/Images/icon.png" />
</Window.Background>
Si un événement donné a lieu, je voudrais changer ce contexte à une autre ressource ("/myapp;component/Images/icon_gray.png"
).
J'ai essayé d'utiliser deux constantes:
private static readonly ImageBrush ENABLED_BACKGROUND =
new ImageBrush(new BitmapImage(new Uri("/myapp;component/Images/icon.png")));
private static readonly ImageBrush DISABLED_BACKGROUND =
new ImageBrush(new BitmapImage(new Uri("/myapp;component/Images/icon_gray.png")));
... mais naturellement, je reçois une exception avec l'URI non valide.
Existe-t-il un moyen simple de modifier l'image d'arrière-plan (via this.Background = ...
) d'une fenêtre WPF en utilisant le pack Uri ou la ressource (par exemple: Myapp.Properties.Resources.icon
)?
Utilisé le second, puisque je définissais une constante statique. Merci! – biasedbit