private bool SaveControlPng(FrameworkElement control, string outFile)
{
try
{
var renderTargetBitmap = Get3DVisual(control);
var bitmapEncoder = new PngBitmapEncoder();
bitmapEncoder.Frames.Add(BitmapFrame.Create(renderTargetBitmap));
using (var stream = File.Create(outFile))
{
bitmapEncoder.Save(stream);
stream.Seek(0, SeekOrigin.Begin);
}
}
catch (Exception ex)
{
Log.Error("Counld not create screenshot from model.", ex);
return false;
}
return true;
}