我正在使用以下代码在Windows Phone 8.1应用程序中共享图像。DataPackage.SetBitmap在Windows Phone 8.1中无法正常工作WinRT App
private async void MainPage_DataRequested(DataTransferManager sender, DataRequestedEventArgs args)
{
var deferral = args.Request.GetDeferral();
var bitmap = new RenderTargetBitmap();
await bitmap.RenderAsync(this);
// 1. Get the pixels
IBuffer pixelBuffer = await bitmap.GetPixelsAsync();
byte[] pixels = pixelBuffer.ToArray();
// 2. Write the pixels to a InMemoryRandomAccessStream
var stream = new InMemoryRandomAccessStream();
var encoder = await BitmapEncoder.CreateAsync(BitmapEncoder.BmpEncoderId, stream);
encoder.SetPixelData(BitmapPixelFormat.Bgra8, BitmapAlphaMode.Straight, (uint)bitmap.PixelWidth, (uint)bitmap.PixelHeight, 96, 96,
pixels);
await encoder.FlushAsync();
stream.Seek(0);
// 3. Share it
args.Request.Data.Properties.Description = "test";
args.Request.Data.Properties.Title = "test";
args.Request.Data.SetBitmap(RandomAccessStreamReference.CreateFromStream(stream));
deferral.Complete();
}
上面的代码显示“准备的内容分享”看法,但它不显示应用程序列表共享图像。
但是,如果我使用DataPackage.SetText,一切工作正常。
找不到问题,请帮帮我!