首页>Program>source

我想在wP7应用程序中显示gif。 有什么办法可以做到这一点?

我已经尝试过这个 http://imagetools.codeplex.com/ ,但是无法使其与wP7一起使用.

预先感谢您的帮助

最新回答
  • 2021-1-11
    1 #

    事实上, 它正在工作,但是缺少一些文档。

    遇到一些麻烦后,这里是使用方法:

      reference ImageTools

      reference ImageTools.Controls

      reference ImageTools.IO.Gif

    在xaml中添加名称空间:

    xmlns:imagetools="clr-namespace:ImageTools.Controls;assembly=ImageTools.Controls"
    

    和资源:

    <phone:PhoneApplicationPage.Resources>
        <imagetools:ImageConverter x:Key="ImageConverter" />
    </phone:PhoneApplicationPage.Resources>
    

    然后将控件与转换器一起使用:

    <imagetools:AnimatedImage Source="{Binding ImageSource, Converter={StaticResource ImageConverter}}" />
    

    您的ImageSource应该是Uri,例如:

    ImageSource = new Uri("http://mysite/my.gif", UriKind.Absolute);
    

    别忘了添加解码后的内容:

    ImageTools.IO.Decoders.AddDecoder<GifDecoder>();
    

  • 2021-1-11
    2 #

    在此处查看Jamie Rodriguez的有关在wP7中使用GIF的文章.他使用了CodePlex的ImageTools项目。

    http://blogs.msdn.com/b/jaimer/archive/2010/11/23/working-with-gif-images-in-windows-phone.aspx

  • 2021-1-11
    3 #

    我很挣扎 使可接受的答案起作用.以下解决方案对我来说可以显示静态gif。

       public ImageResponse(string imageUrl)
        {
            InitializeComponent();
            ImageTools.IO.Decoders.AddDecoder<GifDecoder>();
            var imageResponse = new ExtendedImage();
            imageResponse.UriSource = new Uri(imageUrl);
            imageResponse.LoadingCompleted += this.ImageResponseLoadingCompleted;
        }
        private void ImageResponseLoadingCompleted(object sender, EventArgs e)
        {
            var imageResponse = (ExtendedImage)sender;
            Classes.Util.UiThread.Invoke(() =>
                {
                    this.ImageResponse.Source = imageResponse.ToBitmap();
                });
        }
    

    Classes.Util.UiThread是我用来调用UI线程的帮助程序类

    this.ImageResponse是标准图像控件

  • 2021-1-11
    4 #

    它是动画GIF吗? 如果没有,我会先尝试将GIF转换为其他支持的文件格式,然后再在您的应用中使用它。

  • 2021-1-11
    5 #

    wP7 Silverlight支持JPG / PNG。

  • sql:计算两个日期之间的营业时间
  • python:如何在csv表中进行行到列的数据转置?