C# WPF故事板';Double的动画行为异常

C# WPF故事板';Double的动画行为异常,c#,wpf,C#,Wpf,我使用WPF故事板从屏幕的右角滑动窗口,然后再次隐藏它 我有三个问题: 若捕捉到当前正在向右滑动的窗口,它会减慢速度 有时(非常罕见,所以很难找到原因)窗口只隐藏其一半,动画停止。如果您用鼠标进入窗口,然后再次离开,它会隐藏窗口的其余部分 有时,当我到达屏幕边缘显示窗口时,一段时间内什么也没有发生,然后窗口快速滑动到正确的位置 MouseOnEdge是我的自定义事件,当鼠标到达屏幕右角时触发 这是我的XAML代码: <local:CustomWindow.Triggers>

我使用WPF故事板从屏幕的右角滑动窗口,然后再次隐藏它

我有三个问题:

  • 若捕捉到当前正在向右滑动的窗口,它会减慢速度
  • 有时(非常罕见,所以很难找到原因)窗口只隐藏其一半,动画停止。如果您用鼠标进入窗口,然后再次离开,它会隐藏窗口的其余部分
  • 有时,当我到达屏幕边缘显示窗口时,一段时间内什么也没有发生,然后窗口快速滑动到正确的位置
  • MouseOnEdge是我的自定义事件,当鼠标到达屏幕右角时触发

    这是我的XAML代码:

    <local:CustomWindow.Triggers>
        <EventTrigger RoutedEvent="local:CustomWindow.CustomMouseLeave">
            <BeginStoryboard>
                <Storyboard Name="SlideWindowOff">
                    <DoubleAnimation 
                    Storyboard.TargetName="ShellViewWindow" Storyboard.TargetProperty="Left"
                    Duration="0:0:0.75"
                    AccelerationRatio="0.5"
                    From="{Binding WindowLeft}"
                    To="{Binding WindowLeftHidden}"/>
                </Storyboard>
            </BeginStoryboard>
        </EventTrigger>
        <EventTrigger RoutedEvent="local:CustomWindow.MouseOnEdge">
            <BeginStoryboard>
                <Storyboard Name="SlideWindowOn">
                    <DoubleAnimation 
                    Storyboard.TargetName="ShellViewWindow" Storyboard.TargetProperty="Left"
                    Duration="0:0:0.75"
                    AccelerationRatio="0.5"
                    From="{Binding WindowLeft}"
                    To="{Binding WindowLeftUnhidden}"/>
                </Storyboard>
            </BeginStoryboard>
        </EventTrigger>
    </local:CustomWindow.Triggers>
    
    
    
    为什么会发生这样的事情?这里的主要问题是当故事板只隐藏窗口的一半时,这将是用户最大的问题