WPF:如何在单击另一个按钮时为按钮设置动画?

时间:2011-10-05 18:00:40

标签: wpf xaml animation

我有以下XAML代码:

<Button Content="Menu 1" Height="23" Name="button1" Width="75" Margin="10">
    <Button.Style>
        <Style TargetType="{x:Type Button}">
            <Style.Triggers>
                <EventTrigger RoutedEvent="Button.MouseEnter">
                    <EventTrigger.Actions>
                        <BeginStoryboard>
                            <Storyboard>
                                <DoubleAnimation Storyboard.TargetProperty="RenderTransform.(TranslateTransform.Y)" From="0" To="200" />
                            </Storyboard>
                        </BeginStoryboard>
                    </EventTrigger.Actions>
                </EventTrigger>
            </Style.Triggers>
        </Style>
    </Button.Style>
    <Button.RenderTransform>
        <TranslateTransform X="0" Y="0" />
    </Button.RenderTransform>
</Button>

当鼠标悬停在按钮上时,此代码会在Y方向上移动按钮。 但是,当我将鼠标移到另一个按钮上时,我想要相同的功能。 简而言之,我们假设我有Button1和Button2。当我将鼠标移到Button1上时,Button2应该沿Y方向向下移动。我怎样才能做到这一点。任何人都可以提供相同的工作XAML代码。

1 个答案:

答案 0 :(得分:0)

您可以继承Button并添加名为ButtonToAnimate的属性。

在事件触发器中,将DoubleAnimation的Target指向ButtonToAnimate。