为了指示错误,我想临时更改按钮的背景颜色。我对WPF动画不熟悉,找不到一个简单的例子来继续。而且为了进一步复杂化问题,我正在使用触发器来处理错误通知。
这是我的XAML代码,我想知道如何用动画替换背景设置器(比如在五秒内闪烁三次红色等)。
<UserControl>
<UserControl.Resources>
<Style x:Key="ErrorStyle" TargetType="Button">
<!--Clear the default error template (a red border)-->
<Setter Property="Validation.ErrorTemplate">
<Setter.Value>
<ControlTemplate>
<AdornedElementPlaceholder />
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="Validation.HasError" Value="True">
<Setter Property="ToolTip"
Value="{Binding RelativeSource={RelativeSource Self}, Path=(Validation.Errors)[0].ErrorContent}" />
<!--TODO: Replace with animation-->
<Setter Property="Background" Value="Orange"/>
</Trigger>
</Style.Triggers>
</Style>
</UserControl.Resources>
<Grid>
<Button Command="{Binding ProgramCommand, ValidatesOnExceptions=True, ValidatesOnDataErrors=True}"
Style="{StaticResource ErrorStyle}">
_Program
</Button>
</Grid>
</UserControl>
我也愿意听取更好的(简单)错误通知建议。
Storyboard.Target
,它将无法工作,而我不知道如何在Style
内正确地执行该操作。 - Pat