在启动时在MVVM中动画图像

时间:2016-06-01 08:35:26

标签: wpf animation mvvm

我有一个ImageViewModel,视图由一个图标组成。 当我创建ViewModel的实例时,当视图加载时,我想为图像设置动画以向下移动它。 怎么做?

    <Image x:Name="TestImage" Width="75" Height="75"  Source="pack://application:,,,/TestProject.View;Component/Resources/TestImage.png">      
    </Image>

1 个答案:

答案 0 :(得分:0)

这是我修复它的方式。我把我的图像放在画布上。在userControl Loaded事件中触发UserControl.Loaded事件,该事件将启动我的故事板。

   <Canvas  DataContext="{Binding}" HorizontalAlignment="Left" VerticalAlignment="Top">
    <Canvas.Triggers>
        <EventTrigger  RoutedEvent="UserControl.Loaded">
            <BeginStoryboard >
                <Storyboard Storyboard.TargetName="Image1" Storyboard.TargetProperty="(Canvas.Top)">                        
                    <DoubleAnimation From="0"  To="50" Duration="0:0:2" />
                </Storyboard>
            </BeginStoryboard>
        </EventTrigger>
    </Canvas.Triggers>
    <Image x:Name="Image1"  Grid.Row="1" Width="170" Height="192"  Source="{Binding ImageSource}">             
    </Image>
</Canvas >