WPF面板从左侧动画中滑入

我正在尝试让一个Panel为
WPF中的滑动行为设置动画.我是动画的新手,遇到了麻烦.面板从中心向外填充而不是从左侧填充,它仅在第一次激活.我知道我做错了所以任何帮助都会受到赞赏.下面是我动画的标记.

<Style.Triggers>
        <Trigger  Property="Visibility" Value="Visible">
            <Trigger.EnterActions>
                <BeginStoryboard>
                    <Storyboard>
                        <DoubleAnimation From="0" To="200" Duration="0:0:0.5"
                                         AccelerationRatio="0.2" DecelerationRatio="0.1"
                                         Storyboard.TargetProperty="Width"/>
                    </Storyboard>
                </BeginStoryboard>
            </Trigger.EnterActions>
        </Trigger>
    </Style.Triggers>

最佳答案 不要为“宽度”等属性设置动画,这就是RenderTransforms的用途.

要获得您描述的行为(“滑入”),您需要将TranslateTransform从屏幕/页面的某些X设置为最终位置.

要获得XAML和帖子的其余部分指示的行为,您将使用ScaleTransform,其原点设置在面板的左侧.

您还应该知道渲染变换的目标可能有点棘手,有关详细信息,请参阅此question

这是RenderTransforms的文档(MSDN)

点赞