打印
大多数DevExpress。NET控件(XtraGrid、XtraPivotGrid、XttraTreeList、XtraScheduler、XtraCharts)提供打印和导出功能。
所有可打印的DevExpress.NET控件是使用XtraPrinting库提供的方法打印的。
若要确定预览和打印选项是否可用,请检查控件的IsPrintingAvailable属性值。使用ShowPrintPreview和ShowRibbonPrintPreview方法显示"打印预览"窗口。使用"打印"和"打印对话框"方法打印内容而不显示预览。
打印选项
- 在设计时,使用控件的设计器。
- 在设计时和代码中,使用控件的OptionsPrint属性。
- 在运行时,在"预览"窗口中的"选项"菜单命令调用的"打印选项"对话框中。
打印外观
打印控件时,默认情况下,它使用与在屏幕上显示时相同的外观设置(可以使用"Appearance "属性自定义这些设置)。每个DevExpress.NET控件提供打印外观,用于在打印时绘制其视觉元素(数据单元格、页眉等)。可以通过"AppearancePrint "属性访问这些外观。
- 打印外观也可以通过控件设计器的"Print Appearances "页进行自定义。
- 请确保OptionsPrint.UsePrintStyles (OptionsPrint.UsePrintAppearance)属性设置为true以使用打印而不是显示外观设置。
导出
使用XtraPrinting库以各种格式(PDF、HTML、BMP等)导出控件
打印库允许您导出DevExpress.NET控件转换为各种文档格式(PDF、HTML、MHT、TXT、CSV、XLS、RTF)和图像格式(BMP、JPEG、GIF、TIFF、PNG、EMF)。本主题演示如何使用"Print Preview "窗口并通过代码将控件导出为PDF格式。
使用打印预览窗口导出
可以使用"Print Preview "窗口将可打印控件导出为可用格式。
- 使用控件的ShowPrintPreview方法显示此窗口。下图显示了网格控件的"Print Preview "窗口。
- "Print Preview "窗体顶部的工具栏显示"Export Document... "按钮。单击此按钮可显示一个下拉菜单,允许您选择所需的导出文件格式。
- 若要向报告添加页面或报告标题,请使用可打印链接(PrintableComponentLink)生成报告。
How to:在打印/导出控件主题时设置纸张格式并将自定义信息添加到报告中。
代码导出
以下代码演示了如何在没有"Print Preview "窗口的情况下使用XtraPrinting Library方法将控件导出到代码中的PDF文件。控件(XtraGrid)通过PrintingSystemBase导出为PDF.ExportToPdf方法。有关如何打印和导出控件的详细信息,请参阅打印库文档。
csharp
using DevExpress.XtraPrinting;
// Create a PrintingSystem component.
DevExpress.XtraPrinting.PrintingSystem ps = new DevExpress.XtraPrinting.PrintingSystem();
// Create a link that will print a control.
DevExpress.XtraPrinting.PrintableComponentLink link = new PrintableComponentLink(ps);
// Specify the control to be printed.
link.Component = gridControl1;
// Generate a report.
link.CreateDocument();
// Export the report to a PDF file.
string filePath = @"c:\gridcontrol.pdf";
link.PrintingSystem.ExportToPdf(filePath);
System.Diagnostics.Process process = new System.Diagnostics.Process();
process.StartInfo.FileName = filePath;
process.Start();