其中button1 和 button2 分别使用静态资源和动态资源,当点击最后一个按钮后,除了静态资源的button1,其他都会发生变化。
<Window.Resources>
<LinearGradientBrush x:Key="gradBrush" StartPoint="0,0" EndPoint="1,1">
<GradientStop Color="White" Offset="0"/>
<GradientStop Color="Black" Offset="1"/>
</LinearGradientBrush>
</Window.Resources>
<StackPanel Background="{DynamicResource gradBrush}" Name="sp">
<TextBlock FontFamily="Arial Black" Margin="7" Background="{DynamicResource gradBrush}" Text="Some Buttons"/>
<Button Height="40" Name="btn1" FontWeight="Bold" Background="{StaticResource gradBrush}" Content="Button 1"/>
<Button Height="40" Name="btn2" FontWeight="Bold" Background="{DynamicResource gradBrush}" Content="Button 2"/>
<Button HorizontalAlignment="Right" Click="Button_Click" >
Changed
</Button>
</StackPanel>
public partial class ResourceDict : Window
{
public ResourceDict()
{
InitializeComponent();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
this.Resources["gradBrush"] = Brushes.Silver;
}
}