DXperience WinForms12.2帮助文档六:自定义打印和输出

原创|其它|编辑:郝浩|2013-01-22 15:37:10.000|阅读 1325 次

概述:DXperience WinForms的ShowPrintPreview等方法提供基本的打印/输出功能,但这些方法不能自定义打印和输出时的纸张格式和方向,也不能添加自定义信息到报表中,直接通过XtraPrinting库就可以打破这些限制。

# 您正在找协同办公软件吗?点击这里站长给您推荐 #

相关链接:

DXperience WinForms Subscription 的ExportTo....,Print和ShowPrintPreview 方法提供基本的打印/输出功能。这些方法不能自定义纸张格式和方向,也不能添加自定义信息到报表中。其实,直接通过XtraPrinting库就可以打破这些限制。

用XtraPrinting,你可以:

  • 为报表添加附加信息
  • 添加报表标题
  • 指定页面的页头和页脚
  • 指定页面尺寸、边框或方向等等

这个方法也适用于DXperience WinForms下所有的控件:XtraGrid, XtraPivotGrid, XtraScheduler, XtraTreeList, XtraCharts, XtraLayoutControl, XtraVerticalGridXtraGauges

打印/输出步骤

设置并自定义DXperience WinForms打印/输出选项的操作步骤如下:

1、添加一个 PrintingSystem组件到表单中
2、添加PrintableComponentLink到PrintingSystem.Links集合中
3、将 PrintableComponentLinkBase.Component属性部署到控件的打印/输出
4、如果要自定义纸张,设置链接的 LinkBase.PaperKind, LinkBase.Margins和 LinkBase.Landscape属性为相应的值。
5、如果要为报表添加自定义信息,处理链接相应的事件即可。比如, LinkBase.CreateReportHeaderArea事件可以创建报表标题
6、调用链接的 Link.CreateDocument 方法
7、打印报表,调用链接的 Link.Print 方法
8、显示报表预览,调用链接的 Link.ShowPreview方法
9、要将报表输出为指定格式,调用 PrintingSystem组件相应的ExportTo... 方法即可。

运行时生成报表标题

示例代码如下:

using System.Drawing;
using DevExpress.XtraPrinting;

// Create a PrintingSystem component. 
PrintingSystem ps = new PrintingSystem();
// Create a link that will print a control. 
PrintableComponentLink link = new PrintableComponentLink(ps);
// Specify the control to be printed. 
link.Component = customersGridControl;
// Set the paper format. 
link.PaperKind = System.Drawing.Printing.PaperKind.A4;
// Subscribe to the CreateReportHeaderArea event used to generate the report header. 
link.CreateReportHeaderArea += 
  new CreateAreaEventHandler(printableComponentLink1_CreateReportHeaderArea);
// Generate the report. 
link.CreateDocument();
// Show the report. 
link.ShowPreview();

// Remove the comments below to export the report to a PDF file 
// link.PrintingSystem.ExportToPdf(@"c:\gridcontrol.pdf");  


//... 
private void printableComponentLink1_CreateReportHeaderArea(object sender, 
CreateAreaEventArgs e) {
   string reportHeader = "Customers Report";
   e.Graph.StringFormat = new BrickStringFormat(StringAlignment.Center);
   e.Graph.Font = new Font("Tahoma", 14, FontStyle.Bold);
   RectangleF rec = new RectangleF(0, 0, e.Graph.ClientPageSize.Width, 50);
   e.Graph.DrawString(reportHeader, Color.Black, rec, BorderSide.None);
}


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,尊重他人劳动成果

文章转载自:慧都控件

登录 慧都网发表评论


暂无评论...

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
title
相关厂商
相关产品
DevExpress Universal Subscription

行业领先的界面控件开发包,帮助企业构建卓越应用!

DevExpress WinForms Subscription

为Windows Forms平台创建具有影响力的业务解决方案,高性价比WinForms界面控件套包。

在线
客服
咨询
电话
400-700-1020
在线
QQ
购物车 反馈 返回
顶部
在线客服系统
live chat