2009-09-08 8 views
2

WPF 그리드를 인쇄하고 있습니다. 데이터가 한 페이지에 들어가면 모든 것이 올바르게 작동합니다. 그러나 때때로 그리드에 더 많은 데이터가 포함됩니다. 따라서 그리드를 여러 페이지로 분할해야합니다. 아무도 나를 도울 수 있습니까?WPF Grid 페이지를 인쇄하는 방법?

내 코드는 다음과 같습니다 (visual은 격자입니다).

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"); 

다른 컨트롤을 사용해 야하나요? WPF Toolkit DataGrid를 사용해 보았지만 인쇄 할 수 없었습니다. 나는 흐름 문서의 어떤 것을 들었습니다, 이것이 나를 도울 수 있습니까?

안부
올리버 Hanappi

+0

안녕하세요! FlowDocument를 사용하고 있습니다. 물론 페이징을 지원합니다. 불행히도 많은 페이지에서 열을 분할하는 것은 여전히 ​​문제가됩니다. http://stackoverflow.com/questions/1420162/how-to-print-a-wpf-flow-document-table-across-multiple-pages-if-there- 너무 ~ 남자 –

답변

1

당신이하는 PrintDocument 대신 PrintVisual을 사용할 것 소리. 그래도 자신 만의 DocumentPaginator 클래스를 구현하여 그리드를 별도의 인쇄 가능한 문서로 분리해야합니다.

관련 문제