以下写法,并没改变颜色,求解
<StackPanel Grid.Row="1" Orientation="Horizontal">
<Button x:Name="btnStart" Height="50" Width="720" Grid.Row="1" Grid.Column="3" VerticalAlignment="Center" Click="btnStartClick">
<ControlTemplate TargetType="{x:Type Button}">
<Border BorderThickness="0" CornerRadius="18" Name="PART_Background">
<Border.Background>
<LinearGradientBrush EndPoint="0,1" StartPoint="0,0">
<GradientStop Color="SkyBlue" Offset="0.2" />
<GradientStop Color="#3399ff" Offset="0.5" />
LinearGradientBrush>
Border.Background>
<ContentPresenter Content="{TemplateBinding ContentControl.Content}" HorizontalAlignment="Center" VerticalAlignment="Center" />
Border>
<ControlTemplate.Triggers>
<Trigger Property="ButtonBase.IsPressed" Value="True">
<Setter Property="Foreground" Value="Honeydew"/>
<Setter Property="Background" Value="Honeydew"/>
<Setter Property="UIElement.Effect">
<Setter.Value>
<DropShadowEffect BlurRadius="15" Color="Tan" Direction="0" Opacity="0.6" RenderingBias="Performance" ShadowDepth="0" />
Setter.Value>
Setter>
Trigger>
<Trigger Property="Content" Value="Stop Controller">
<Setter Property="Foreground" Value="Red">Setter>
Trigger>
ControlTemplate.Triggers>
ControlTemplate>
Button>
StackPanel>
这段代码只是在按钮的控件模板中定义了一个触发器,当按钮的内容为"Stop Controller"时,会将按钮的前景色设置为红色。但是在代码中没有设置按钮的内容为"Stop Controller",因此触发器不会被触发,按钮的前景色也不会变成红色。要实现根据文字内容改变颜色的效果,需要在代码中动态地设置按钮的内容,并且在触发器中设置对应的值。