2015-10-28 88 views

回答

0

隨着Control.DrawToBitmap你可以捕捉一個表單,這是你正在尋找的「應用程序」。

+0

它不工作 – CraigTayor

+0

這確實是不幸的。我自己相信很多年前曾經在Windows Forms應用程序中使用它。我搜索了這個函數,並且確實發現它並不適用於所有事情,並且有很多方法。然而,我將不會發布他們,因爲Rob有一個很好的答案來幫助OP。 –

1
private async Task SaveVisualElementToFile(FrameworkElement element, StorageFile file) 
    { 
     var renderTargetBitmap = new RenderTargetBitmap(); 
     await renderTargetBitmap.RenderAsync(element); 
     var pixels = await renderTargetBitmap.GetPixelsAsync(); 

     using (var fileStream = await file.OpenAsync(FileAccessMode.ReadWrite)) 
     { 
      var encoder = await BitmapEncoder.CreateAsync(BitmapEncoder.PngEncoderId, fileStream); 
      encoder.SetPixelData(
       BitmapPixelFormat.Bgra8, 
       BitmapAlphaMode.Ignore, 
       (uint)renderTargetBitmap.PixelWidth, 
       (uint)renderTargetBitmap.PixelHeight, 
       DisplayInformation.GetForCurrentView().LogicalDpi, 
       DisplayInformation.GetForCurrentView().LogicalDpi, 
       pixels.ToArray()); 
      await encoder.FlushAsync(); 
     } 
    } 
相關問題