Я искал и искал, но не смог найти что-либо с той же проблемой, что и я. Я пытаюсь сделать несколько скриншотов с высоким разрешением/dpi приложения WPF. Единственная проблема заключается в том, что мне нужно включать информацию из всплывающих подсказок диаграммы в рендеринге, кроме того, что я могу скрыть скриншоты просто отлично.WPF Включая подсказку в Render с RenderTargetBitmap
В настоящее время я использую Infragistics XamDataChart, и я генерирую всплывающие подсказки в коде, а не в xaml.
Кто-нибудь знает, как получить всплывающую подсказку в визуальном дереве, чтобы он отображал? Или иметь возможность отображать все окно и все внутри него, включая наложения всплывающих подсказок?
Код для визуализации:
public static void RenderVisualToFile(this FrameworkElement visual)
{
var width = (int)visual.RenderSize.Width;
var height = (int)visual.RenderSize.Height;
RenderTargetBitmap renderTarget = new RenderTargetBitmap(width * 4, height * 4, 384, 384, PixelFormats.Pbgra32);
renderTarget.Render(visual);
// Encode and save to PNG file
var enc = new PngBitmapEncoder();
enc.Frames.Add(BitmapFrame.Create(renderTarget));
if (Directory.Exists("Screenshots"))
{
using (var stm = File.Create(@"Screenshots\Render_" + DateTime.Now.ToString("yyMMMdd_HHmmss") + ".png"))
enc.Save(stm);
}
else
{
Directory.CreateDirectory("Screenshots");
using (var stm = File.Create(@"Screenshots\Render_" + DateTime.Now.ToString("yyMMMdd_HHmmss") + ".png"))
enc.Save(stm);
}
}
И я называю это в коде MainWindow позади.
if (e.Key == Key.PrintScreen)
{
this.RenderVisualToFile();
}
Ever получить ответ на этот вопрос? Благодарю. –