基于事件XAML生成的应用程序更改标签的背景色

本文关键字:应用程序 背景色 标签 于事件 事件 XAML | 更新日期: 2023-09-27 18:30:02

我正在构建一个应用程序来检测事件,在该事件发生后,指示事件被触发的标签应该会改变颜色。

我正在使用XAML来构建我的应用程序的接口,给标签初始黄色很容易。我希望双击时它变成绿色。

    <!-- setting style for the identification labels -->
<Window.Resources>
    <Style x:Key="StatusLabelStyle" TargetType="Label">
        <Setter Property="Background" Value="Yellow" />
        <Setter Property="BorderBrush" Value="Yellow" />
        <Setter Property="BorderThickness" Value="1" />
        <Setter Property="HorizontalContentAlignment" Value="Center" />
        <Setter Property="VerticalContentAlignment" Value="Center" />
    </Style>
</Window.Resources>

                <Label Name="L1" Margin="10,50,10,0" Content="TEST A" Width="100" Height="60"
                       Style="{StaticResource StatusLabelStyle}" MouseDoubleClick="L1_MouseDoubleClick" />

我试着通过代码隐藏文件进行操作,但一再失败。

基于事件XAML生成的应用程序更改标签的背景色

您应该使用StoryboardAnimations

<Label.Triggers>
    <EventTrigger RoutedEvent="Label.MouseDoubleClick">
        <BeginStoryboard>
            <Storyboard>
                <ColorAnimation  To="Green" Storyboard.TargetProperty="(Label.Background).(SolidColorBrush.Color)" FillBehavior="Stop" Duration="0.0.1"/>
            </Storyboard>
        </BeginStoryboard>
    </EventTrigger> 
</Label.Triggers>