Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf 触发器和动画_Wpf_Xaml_Animation_Triggers - Fatal编程技术网

Wpf 触发器和动画

Wpf 触发器和动画,wpf,xaml,animation,triggers,Wpf,Xaml,Animation,Triggers,我必须遵循XAML <Window.Style> <Style TargetType="{x:Type Window}"> <Setter Property="Opacity" Value="0.8" /> <Style.Triggers> <Trigger Property="IsMouseOver" Value="True"> <S

我必须遵循XAML

<Window.Style>
    <Style TargetType="{x:Type Window}">
        <Setter Property="Opacity" Value="0.8" />
        <Style.Triggers>
            <Trigger Property="IsMouseOver" Value="True">
                <Setter Property="Opacity" Value="1" />
            </Trigger>
            <EventTrigger RoutedEvent="FrameworkElement.Loaded">
                <BeginStoryboard>
                    <BeginStoryboard.Storyboard>
                        <Storyboard>
                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="Opacity">
                                <EasingDoubleKeyFrame KeyTime="0" Value="0" />
                                <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0.8" />
                            </DoubleAnimationUsingKeyFrames>
                        </Storyboard>
                    </BeginStoryboard.Storyboard>
                </BeginStoryboard>
            </EventTrigger>
        </Style.Triggers>


    </Style>
</Window.Style>


当我有EventTrigger时,鼠标悬停触发器不工作。如果没有EventTrigger,则工作正常。我怎么能同时拥有这两个呢?

动画将不透明度设置为最终值,你需要给它一个FillBehavior的stop

<Window.Style>
        <Style TargetType="{x:Type Window}">
            <Setter Property="Opacity" Value="0.8" />
            <Style.Triggers>
                <Trigger Property="IsMouseOver" Value="True">
                    <Setter Property="Opacity" Value="1" />
                </Trigger>
                <EventTrigger RoutedEvent="FrameworkElement.Loaded">
                    <BeginStoryboard>
                        <BeginStoryboard.Storyboard>
                            <Storyboard>
                                <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="Opacity" FillBehavior="Stop">
                                    <EasingDoubleKeyFrame KeyTime="0" Value="0" />
                                    <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0.8" />
                                </DoubleAnimationUsingKeyFrames>
                            </Storyboard>
                        </BeginStoryboard.Storyboard>
                    </BeginStoryboard>
                </EventTrigger>
            </Style.Triggers>


        </Style>
    </Window.Style>

动画将不透明度设置为最终值,您需要为其指定一个FillBehavior停止

<Window.Style>
        <Style TargetType="{x:Type Window}">
            <Setter Property="Opacity" Value="0.8" />
            <Style.Triggers>
                <Trigger Property="IsMouseOver" Value="True">
                    <Setter Property="Opacity" Value="1" />
                </Trigger>
                <EventTrigger RoutedEvent="FrameworkElement.Loaded">
                    <BeginStoryboard>
                        <BeginStoryboard.Storyboard>
                            <Storyboard>
                                <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="Opacity" FillBehavior="Stop">
                                    <EasingDoubleKeyFrame KeyTime="0" Value="0" />
                                    <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0.8" />
                                </DoubleAnimationUsingKeyFrames>
                            </Storyboard>
                        </BeginStoryboard.Storyboard>
                    </BeginStoryboard>
                </EventTrigger>
            </Style.Triggers>


        </Style>
    </Window.Style>