我有一个ItemsCollection
托管在里面ScrollViewer
,它足够大,可以在打印时跨越多个页面。到目前为止,我已经设法打印了一个页面,PrintVisual(itemsControl)
但从我读过的内容来看,我需要以不同的方式在多个页面上打印单个控件。谁能指出我正确的方向?
谢谢!
我有一个ItemsCollection
托管在里面ScrollViewer
,它足够大,可以在打印时跨越多个页面。到目前为止,我已经设法打印了一个页面,PrintVisual(itemsControl)
但从我读过的内容来看,我需要以不同的方式在多个页面上打印单个控件。谁能指出我正确的方向?
谢谢!
你需要做的是剪辑。
您必须根据页面大小计算剪辑大小并将控件的图像剪辑成所需数量的部分,并将这些剪辑图像保存在列表中并将它们发送到您的 preint 逻辑。
程序:
您需要将视觉对象转换为具有所需编码的 RenderTargetBitmap。
然后,通过使用 CroppedBitmap,您可以将位图图像裁剪成所需的尺寸。然后,List<Image>
像这样维护这些剪辑。然后,使用您的打印逻辑迭代并打印它们。如果您想要样品,我会尽力提供。我认为这是一个很老的帖子。希望这对将来的某些人有所帮助。
检查CodePlex上WPF 报告的此实现。我在我的一个应用程序中使用了这些,它正是这样做的。如果您想知道如何......只需查看代码。