【发布时间】:2015-08-17 10:54:29
【问题描述】:
我在 wp8.1 rt 中创建了应用程序。单击按钮时,我需要截取页面并在社交媒体(如 facebook、twiter 等)上分享。 到目前为止,我所做的是 -
DataTransferManager dtManager = DataTransferManager.GetForCurrentView();
dtManager.DataRequested += dtManager_DataRequested;
private async void dtManager_DataRequested(DataTransferManager sender, DataRequestedEventArgs e)
{
e.Request.Data.Properties.Title = "here is title";
e.Request.Data.Properties.Description = "H..........";
e.Request.Data.SetWebLink(new Uri("http://......."));
//here i need to add image also
}
private void share_Click(object sender, RoutedEventArgs e)
{
Windows.ApplicationModel.DataTransfer.DataTransferManager.ShowShareUI();
}
到这里为止,我可以分享标题、描述……但无法分享以编程方式捕获的图像 为了捕获图像,我所做的如下:
private async Task<RenderTargetBitmap> CreateBitmapFromElement(FrameworkElement uielement)
{
try
{
var renderTargetBitmap = new RenderTargetBitmap();
await renderTargetBitmap.RenderAsync(uielement);
return renderTargetBitmap;
}
catch (Exception ex)
{
System.Diagnostics.Debug.WriteLine(ex);
}
return null;
}
img.source= 等待 CreateBitmapFromElement(rootcontent); //这里的rootcontent是我需要捕获的网格名称。
在这里我也可以获取图像。但无法共享此捕获的图像。 我读了一些博客,但仍然无法解决。 我想我需要将它转换为 BitmapImage。我怎样才能做到这一点??或者有没有其他最好的方法来处理这个问题。
我需要的是当点击分享按钮时,我需要截取屏幕截图并在社交媒体(如 facebook)上分享。
- 谢谢
【问题讨论】:
标签: c# windows-runtime windows-phone-8.1