使用 Silverlight 在 WP7 应用程序中显示 GIF
我想在我的 WP7 应用程序中显示 gif。 有什么方法可以实现这一点吗?
我已经尝试过这个 http://imagetools.codeplex.com/ 但无法使其与 WP7 一起使用。
预先感谢您的任何帮助
I would like to display gif in my WP7 application.
Is there some way to achieve this ?
I've tryed this one http://imagetools.codeplex.com/ but can't make it working with WP7.
Thanks in advance for any help
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
实际上,
它正在工作,但缺少一些文档。
经过一些麻烦,这里是如何使用它:
在xaml中添加命名空间:
和资源:
然后将控件与转换器一起使用:
您的ImageSource应该是一个Uri,例如:
Don'不要忘记添加解码:
In fact,
it's working, but it lacks some documentation.
After some troubles, here's how to use it :
Add namespace in xaml :
And resources :
Then use the control with the converter :
Your ImageSource should be an Uri, for example :
Don't forget to add decoded :
查看 Jamie Rodriguez 的关于在 WP7 中使用 GIF 的帖子。他使用 CodePlex 的 ImageTools 项目。
http ://blogs.msdn.com/b/jaimer/archive/2010/11/23/working-with-gif-images-in-windows-phone.aspx
Check out Jamie Rodriguez's post here on using GIFs with WP7. He uses the ImageTools project from CodePlex.
http://blogs.msdn.com/b/jaimer/archive/2010/11/23/working-with-gif-images-in-windows-phone.aspx
我努力让接受的答案发挥作用。以下解决方案适用于我显示静态 gif。
Classes.Util.UiThread 是我用来调用 UI 线程的辅助类
this.ImageResponse 是一个标准图像控件
I struggled to get the accepted answer working. The following solution worked for me to display a static gif.
Classes.Util.UiThread is a helper class I use to call the UI Thread
this.ImageResponse is a standard image control
是GIF动画吗?如果没有,我会尝试将 GIF 转换为其他受支持的文件格式,然后再在您的应用程序中使用它。
Is it an animated GIF? If not, I would try converting the GIF to another supported file format before using it in your app.
WP7 Silverlight 支持 JPG/PNG。
WP7 Silverlight supports JPG/PNG.
根据 http://msdn.microsoft.com/en- us/library/ff462087(VS.92).aspx Silverlight 图像控件不支持 GIF 文件。
通过使用 ImageTools,您可以在设备上即时将 GIF 文件转换为其他文件。如果您使用的是您可以控制的 gif 文件(即您将它们捆绑在 XAP 中或者它们来自您的网络服务器。),您应该使用这些文件的转换版本。
这意味着应用程序必须做的事情更少。
连锁反应是:
1. 您将需要编写更少的代码。
2. 该应用程序将需要做更少的工作,因此性能会稍微好一些。
当然,这不包括 GIF 动画。对于这些,您需要使用不同的方法。
As per http://msdn.microsoft.com/en-us/library/ff462087(VS.92).aspx the Silverlight image control does not support GIF files.
By using ImageTools you are converting the GIF file to something else on the fly on the device. If you are using gif files that you have control of (i.e. You are bundling them in the XAP or they are coming from your webserver.) you should use converted versions of these files.
This will mean that the app has to do less.
The knock on effect is that:
1. You will have to write less code.
2. The app will have to do less work and so will perform slightly better.
Of course, this doesn't cover animated GIFs. For these you'll need to use a different approach.