Изменить фоновое изображение окна WPF в коде C #
У меня есть пара изображений, настроенных как ресурсы приложения.
Когда мое приложение запускается, фон главного окна устанавливается через XAML:
<Window.Background>
<ImageBrush ImageSource="/myapp;component/Images/icon.png" />
</Window.Background>
Если происходит данное событие, я хотел бы изменить этот фон на другой ресурс ("/myapp;component/Images/icon_gray.png"
).
Я попытался использовать две константы:
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")));
... но, естественно, я получаю исключение с неверным URI.
Есть ли простой способ изменить фоновое изображение (черезthis.Background = ...
) окна WPF с использованием либо пакета Uri, либо ресурса (т.е.Myapp.Properties.Resources.icon
)?