Пытаюсь добавить настройку цветов в программе (по нажатию кнопки) для этого использую Solidcolorbrush(прописаны в App.xaml), но я не знаю как обратиться к ним через MaimWindow.xaml.cs.Буду рад любой помощи, заранее “Спасибо”.
<ResourceDictionary>
<SolidColorBrush x:Key="ForegroundBrush" Color="Red"/>
<SolidColorBrush x:Key="BackgroundBrush_1" Color="Purple"/>
<SolidColorBrush x:Key="BackgroundBrush_2" Color="White"/>
</ResourceDictionary>
а вот так пытался их изменить
SolidColorBrush buttonBrush =(SolidColorBrush)this.TryFindResource("BackgroundBrush_1");
buttonBrush.Color = Colors.LimeGreen;
Вы можете использовать следующий код для изменения значения конкретного элемента в словаре:
Resources["BackgroundBrush_1"] = new SolidColorBrush(Colors.LimeGreen);
Это изменение повлияет только на те элементы, которые используют DynamicResource.
<TextBlock Text="Test Static Resource" FontSize="18" Grid.Row="0"
Foreground="{StaticResource ForegroundBrush}"
Background="{StaticResource BackgroundBrush_1}"/>
<TextBlock Text="Test Dynamic Resource" FontSize="18" Grid.Row="1"
Foreground="{DynamicResource ForegroundBrush}"
Background="{DynamicResource BackgroundBrush_1}"/>
В этом примере, первый блок использует StaticResource, который получает значение при инициализации, и использует его на протяжении всей своей жизни. Второй блок использует DynamicResource, который реагирует на изменения в словаре.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей