Windows 8 如何在Windows 8中将图像控件保存到本地文件?

Windows 8 如何在Windows 8中将图像控件保存到本地文件?,windows-8,winrt-xaml,Windows 8,Winrt Xaml,我正在编写客户机-服务器应用程序,在该应用程序中,我获取带有图像Url的项目。此Url与图像控件绑定: <Image Source{Binding ImageUrl} x:Name="img_avatar" Stretch="UniformToFill" Width="48" Height="48"/> 我想将image.Source中的图像保存到本地文件夹,而不使用任何使用下载操作的方法 请帮我找个人 没有办法按你的要求去做。当您将图像控件的源设置为Uri时,它将被转换为Bi

我正在编写客户机-服务器应用程序,在该应用程序中,我获取带有图像Url的项目。此Url与图像控件绑定:

<Image Source{Binding ImageUrl} x:Name="img_avatar" Stretch="UniformToFill" Width="48" Height="48"/>

我想将image.Source中的图像保存到本地文件夹,而不使用任何使用下载操作的方法


请帮我找个人

没有办法按你的要求去做。当您将图像控件的源设置为Uri时,它将被转换为BitmapImage,而BitmapImage不会公开任何API来保存文件甚至提取位图。如果您想避免多次下载图像,可以将其作为文件下载一次,然后从文件中加载BitmapImage,而不是Uri。

我相信通过一点反射黑客技术,这应该是可行的。但是有很多更好的解决方案,所以是的

子类Image或write-attached属性来处理逻辑。您所要做的就是将映像自己加载到MemoryStream中,并手动创建BitmapImage(在子类映像或附加的ProeProperty后面)

通过这种方式,您可以公开允许直接访问MemoryStream的新属性,并从中可以将文件保存到HDD,而不会浪费宝贵的内存

如果您在提供此功能的同时还可以保留Source=“{Binding}”语法,则可以获得额外的积分