如何在WPF中实现从右到左滑动效果的窗口显示

3

我希望以从右到左过渡的方式展示除主页以外的所有窗口。

我尝试了这个:

<Window.Triggers>
    <EventTrigger RoutedEvent="Window.Loaded">
        <BeginStoryboard>
            <!--<Storyboard>
                <DoubleAnimation Storyboard.TargetProperty="Opacity" From="0" To="1" Duration="0:0:2" FillBehavior="HoldEnd" />
            </Storyboard>-->

            <Storyboard >
                <ThicknessAnimation Duration="0:0:.8" Storyboard.TargetProperty="Margin" To="-1200,0,-100,0" AccelerationRatio=".1"/>
            </Storyboard>
        </BeginStoryboard>
    </EventTrigger>
</Window.Triggers>

如果我使用StackPanel触发器,它会从窗口左侧进入。

同样的,我需要显示窗口本身。

如何实现?

1个回答

13

Left属性上使用DoubleAnimation应该可以解决问题。

<Window.Triggers>
    <EventTrigger RoutedEvent="Window.Loaded">
        <BeginStoryboard>
            <Storyboard >
                <DoubleAnimation Duration="0:0:.8" Storyboard.TargetProperty="Left" From="1920" To="0" AccelerationRatio=".1"/>
            </Storyboard>
        </BeginStoryboard>
    </EventTrigger>
</Window.Triggers>

这个正如我所预期的一样很好地工作了。非常感谢。 我是 WPF 的新手,还不能完全理解这些东西。 - Raj
请提供一些链接以获取这些过渡和动画的参考。 - Raj

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接