我正在为Windows Phone 8.1编写应用程序。
我需要将UIElement保存为图像文件(我更喜欢JPG或PNG)。 我使用RenderTargetBitmap类来执行此操作。 在我的UIElement上调用RenderAsync方法之后,我创建了一个IBuffer,它包含了我的RenderTargetBitmap方法GetPixelsAsync()的结果。
现在我需要调用方法ToArray()将我的IBuffer转换为字节数组以使用类似BitmapEncoder的方式保存我的图像,但似乎在Windows Phone 8.1上没有任何ToArray()方法IBuffer,在Windows 8.1上存在。
我该如何解决这个问题?
答案 0 :(得分:23)
这在Windows Phone 8.1上可用,但在WP 8.0上不。 (见MSDN link)
您需要确保包含适当的命名空间,以便编译器找到它:
using System.Runtime.InteropServices.WindowsRuntime
答案 1 :(得分:3)
我只是不想创建新问题,所以决定扩展这个问题。它将是WP8和Windows商店应用程序
平台的完整答案也许您知道如何在我们无法使用的Windows应用商店应用中将IBuffer转换为byte [] 此命名空间:System.Runtime.InteropServices.WindowsRuntime
此致 马尔钦
提案解决方案: 我使用这篇文章中的代码:https://stackoverflow.com/a/21490534/3139083
由于