C# 单击控件时,MouseLeftButtonDown动画很晚才会激活

C# 单击控件时,MouseLeftButtonDown动画很晚才会激活,c#,wpf,xaml,animation,C#,Wpf,Xaml,Animation,您好,我在WPF项目中遇到了一个奇怪的问题。 我正在尝试在我的UI上设置一些元素的样式,我还想实现一些动画,如单击动画或悬停动画。 除了MouseLeftButtonDown动画之外,创建任何动画都没有问题。 在我的风格中,我实现了如下动画(此风格用于标签s): 我的期望是,每当我按下鼠标左键时,标签的前景将变为#6A6A6A。 事实上,它实现了我的预期,但动画不会立即执行,而是在我按下鼠标左键(按下lmb->等待1秒->颜色更改)大约1秒后执行。 我真的不知道为什么会这样。除此之外,所有其

您好,我在WPF项目中遇到了一个奇怪的问题。
我正在尝试在我的UI上设置一些元素的样式,我还想实现一些动画,如单击动画或悬停动画。
除了
MouseLeftButtonDown
动画之外,创建任何动画都没有问题。

在我的风格中,我实现了如下动画(此
风格
用于
标签
s):


我的期望是,每当我按下鼠标左键时,
标签的
前景将变为#6A6A6A。
事实上,它实现了我的预期,但动画不会立即执行,而是在我按下鼠标左键(按下lmb->等待1秒->颜色更改)大约1秒后执行。
我真的不知道为什么会这样。除此之外,所有其他动画都可以正常工作并立即执行。
我试图通过代码隐藏中的事件更改
标签的颜色,因为我认为我的XAML代码可能有错误,但结果是相同的延迟动画


我可以对期望的结果做些什么?

正如您从这个非常简单的工作示例中所看到的,是代码中的某些内容导致了您的问题:

<TextBlock Text="Oh I don't know... just some text">
    <TextBlock.Style>
        <Style>
            <Setter Property="TextBlock.Foreground" Value="Green" />
        </Style>
    </TextBlock.Style>
    <TextBlock.Triggers>
        <EventTrigger RoutedEvent="MouseLeftButtonDown">
            <EventTrigger.Actions>
                <BeginStoryboard>
                    <Storyboard TargetProperty="(Foreground).(SolidColorBrush.Color)">
                        <ColorAnimation To="Red" Duration="0:0:0.5" />
                    </Storyboard>
                </BeginStoryboard>
            </EventTrigger.Actions>
        </EventTrigger>
    </TextBlock.Triggers>
</TextBlock>

没有人能告诉你你的问题是什么,因为你没有显示相关的代码。。。请不要把这句话理解为将所有代码添加到问题中。。。这不是它的意思。如果您想获得有关此问题的进一步帮助,请仔细遵循Stack Overflow help Center页面中给出的建议,提供一个完整但简洁的工作代码示例,该示例仍然显示您的问题


当遵循这个简化建议时,10次中有9次我们总能找到问题的解决方案。

尝试
Duration=“00:00:00”
已经尝试过了,但不幸的是取得了如此成功。感谢您的回复:)好吧,如果我必须尝试这么简单的事情,我会觉得自己像个白痴:我真的不知道为什么它在我的应用程序中不起作用。我设置了一个新项目来测试你的代码,我甚至知道它是有效的。啊。。所以,是的,在新项目中,它工作得很好,我也将我的代码复制到了新项目中。是的,它也起作用了。我想我会对我的应用程序做一些修改,也许我会找出它不起作用的原因。
<TextBlock Text="Oh I don't know... just some text">
    <TextBlock.Style>
        <Style>
            <Setter Property="TextBlock.Foreground" Value="Green" />
        </Style>
    </TextBlock.Style>
    <TextBlock.Triggers>
        <EventTrigger RoutedEvent="MouseLeftButtonDown">
            <EventTrigger.Actions>
                <BeginStoryboard>
                    <Storyboard TargetProperty="(Foreground).(SolidColorBrush.Color)">
                        <ColorAnimation To="Red" Duration="0:0:0.5" />
                    </Storyboard>
                </BeginStoryboard>
            </EventTrigger.Actions>
        </EventTrigger>
    </TextBlock.Triggers>
</TextBlock>