如何打印WPF网格页面?

如何打印WPF网格页面?,wpf,printing,grid,paging,Wpf,Printing,Grid,Paging,我正在打印WPF网格。只要数据放在一个页面上,一切正常。但有时网格包含更多数据。因此,我需要将网格拆分为多个页面。有人能帮我吗 我的代码如下所示(可视化是网格) 我应该尝试另一个控件吗?我尝试了WPF工具包DataGrid,但无法将其打印出来。我听说了一些流动文件,这能帮我吗 致以最诚挚的问候 Oliver Hanappi听起来您想使用PrintDocument而不是PrintVisual。不过,您可能需要实现自己的DocumentPaginator类来将网格拆分为单独的可打印文档 嗨!我现在使

我正在打印WPF网格。只要数据放在一个页面上,一切正常。但有时网格包含更多数据。因此,我需要将网格拆分为多个页面。有人能帮我吗

我的代码如下所示(可视化是网格)

我应该尝试另一个控件吗?我尝试了WPF工具包DataGrid,但无法将其打印出来。我听说了一些流动文件,这能帮我吗

致以最诚挚的问候

Oliver Hanappi

听起来您想使用PrintDocument而不是PrintVisual。不过,您可能需要实现自己的DocumentPaginator类来将网格拆分为单独的可打印文档

嗨!我现在使用的是FlowDocument,它当然支持分页。不幸的是,在多个页面上拆分列仍然是一个问题:
var printCapabilities = printDialog.PrintQueue.GetPrintCapabilities(printDialog.PrintTicket);

var size = new Size(printCapabilities.PageImageableArea.ExtentWidth,
     printCapabilities.PageImageableArea.ExtentHeight);

visual.Measure(size);
visual.Arrange(new Rect(new Point(printCapabilities.PageImageableArea.OriginWidth,
    printCapabilities.PageImageableArea.OriginHeight), size));

printDialog.PrintVisual(visual, "Print ListView");