0

我有一个不错的小弹出窗口,当它显示时,我希望它从 0 到 1x 缩放,但我不正确,当我多次单击时,看起来我“捕捉”了各种动画“增长”期间的状态。

<Window.Triggers>

    <EventTrigger RoutedEvent="FrameworkElement.MouseRightButtonDown" 
                  >
        <EventTrigger.Actions>
            <BeginStoryboard>
                <Storyboard>
                    <DoubleAnimationUsingKeyFrames BeginTime="00:00:00" 
                        Storyboard.TargetName="SimplePopup" 
                        Storyboard.TargetProperty="(FrameworkElement.LayoutTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleY)">
                        <SplineDoubleKeyFrame KeyTime="00:00:00" Value="0"/>
                        <SplineDoubleKeyFrame KeyTime="00:00:00.3000000" Value="1"/>
                    </DoubleAnimationUsingKeyFrames>

                </Storyboard>
            </BeginStoryboard>
        </EventTrigger.Actions>
    </EventTrigger>

</Window.Triggers>

和弹出窗口:

   <Popup Name="SimplePopup"
           AllowsTransparency="True" 
           StaysOpen="False">
        <Popup.LayoutTransform>
            <TransformGroup>
                <ScaleTransform ScaleX="1" ScaleY="1" />
                <SkewTransform AngleX="0" AngleY="0" />
                <RotateTransform Angle="0" />
                <TranslateTransform X="0" Y="0" />
            </TransformGroup>
        </Popup.LayoutTransform>
        <Border> some Content here
          </Border>
    </Popup>
4

2 回答 2

0

我不确定你的意思

在“成长”期间“捕捉”各种状态的动画。

也许它不会完成动画,而是在情节提要完成之前单击时重新启动?如果是这样,您需要仅在动画未运行时通过触发动作来防止动画重新启动。我认为这可以通过 Blend 中更复杂的行为或触发器来完成。

于 2010-04-09T14:30:08.013 回答
0

通过“捕捉”动画在“成长”期间的各种状态。

我的意思是根本没有动画,我所看到的只是以不同大小缩放的静态弹出窗口,而不是可见的动画。

于 2010-04-12T06:16:02.190 回答