加载一系列具有运动效果的图像WPF C#

时间:2014-07-24 07:19:53

标签: c# wpf image load

我想知道如何制作一个按钮来加载允许我上传3张图像的窗口,这样就给人一种gif的印象。

如果我做一个项目一切都很好,但是当我这样做时,我关联一个按钮对我来说不起作用。 这是为什么? 有人可以帮我理解吗?

此代码XAML:

<Image Name="ConnectionImage" Grid.RowSpan="2" Grid.ColumnSpan="2">
            <Image.Triggers>
                <EventTrigger RoutedEvent="Image.Loaded">
                    <BeginStoryboard>
                        <Storyboard>
                            <DoubleAnimation Name="DoubleAnimation_ConnectionTest" Storyboard.TargetName="ConnectionImage" 
                                             Storyboard.TargetProperty="Width" From="200" To="200" 
                                             Duration="0:0:1.0"  Completed="DoubleAnimation_Completed"/>
                        </Storyboard>
                    </BeginStoryboard>
                </EventTrigger>
            </Image.Triggers>
        </Image>

而图像代码为:

    int ctr = 1;
    private void DoubleAnimation_Completed (object sender, EventArgs e)
    {
        ShowImage();
        DoubleAnimation_ConnectionTest.BeginAnimation(Image.WidthProperty, DoubleAnimation_ConnectionTest);
    }

    private void ShowImage()
    {
        string filename = "Images/Connection" + ctr + ".jpg";
        BitmapImage image = new BitmapImage();
        image.BeginInit();
        image.UriSource = new Uri(filename, UriKind.Relative);
        image.EndInit();
        ConnectionImage.Source = image;

        ctr++;

        if (ctr > 3)
        {
            ctr = 1;
        }
    }

和按钮:

 private void Button_Test_DB_Click(object sender, RoutedEventArgs e)
        {
            Window_Test Test_DB = new Window_Test();
            Test_DB.Show();

        }

1 个答案:

答案 0 :(得分:0)

使用C#完全可以。您可以使用FrameDimension Class来帮助您。不幸的是,我无法将此问题视为重复,因为这些帖子没有可接受的答案......相反,我只能建议您查看How do I get an animated gif to work in WPF?Animating Gif in WPF个问题的答案这里是Stack Overflow。

此外,您还可以在Visual C#Kicks网站上看到The Code - An Animated GIF Class页面。