C# WPF windows 应用程序屏幕有多个网格和文本框,现在我需要将页面的所有内容显示为可打印格式,然后打印,这里每个网格有超过 500 条记录,我必须打印所有数据,然后再打印我必须在所有数据的可打印视图中显示。
是否有任何开源可用于此?
或任何其他方法来实现这一目标?
或者有什么方法可以将数据导出为 HTML 格式?
下面的代码让您获得 FrameworkElement(您的窗口)的图像:您可以使用图像并打印图像:(我不确定图像会是什么样子,因为您有超过 500 条记录)
Transform transform = element.LayoutTransform; element.LayoutTransform = null;
double width = element.ActualWidth;
double height = element.ActualHeight;
// fix margin offset as well
Thickness margin = element.Margin;
element.Margin = new Thickness(0, 0, margin.Right - margin.Left, margin.Bottom - margin.Top);
// Get the size of canvas
Size size = new Size(width, height);
// force control to Update
element.Measure(size);
element.Arrange(new Rect(size));
RenderTargetBitmap bmp = new RenderTargetBitmap((int)width, (int)height, 96, 96, PixelFormats.Pbgra32);
bmp.Render(element);
// return values as they were before
element.LayoutTransform = transform;
element.Margin = margin;
Clipboard.SetImage(bmpCopied);