找回密码
 立即注册

QQ登录

只需一步,快速开始

来爱清
论坛元老   /  发表于:2015-1-20 10:41  /   查看:15498  /  回复:17
1.C1Report代码中如何设置打印页面的属性
比如,我在C1ReportDesigner中设置了纸张方向为横向,在程序中预览时也是横向的;但是打印出来却是纵向的,非要在打印属性里再次设置。

如何在程序里设置类似于纸张方向、页边距、选择纸张等属性?

2.在程序里预览报表时,大多是用C1.WPF.C1Report.4.dll里面的C1DocumentViewer控件。但是这个控件只有打印的功能,没有导出。有没有支持多种格式(Excel、pdf、Word等)导出的控件?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

17 个回复

倒序浏览
Alice
社区贡献组   /  发表于:2015-1-20 11:53:00
沙发
回复 1楼来爱清的帖子

1.通常使用C1Report.Document下的属性来进行打印设置。横向打印需要将Landscape属性设置为true。
我们的博客里有定展示和打印页面。
http://blog.gcpowertools.com.cn/ ... gs-of-c1report.aspx
2.C1Report本身就支持导出成各种格式,比如XPS,PDF,HTML和text。
另外C1PrintDocument控件可以创建复杂的文档,支持打印,预览,导出成其他格式,比如PDF和RTF。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
来爱清
论坛元老   /  发表于:2015-1-20 13:58:00
板凳
我用的是Studio for WPF,博客里是WinForm,WPF这边也能用?“C1Report本身就支持导出成各种格式”,能否提供Demo?C1PrintDocument控件的使用有没有Demo?
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-1-20 14:37:00
地板
回复 3楼来爱清的帖子

C1Report的导出比较简单。
导入XML并存成PDF文件的步骤如下:
c1report.Load(xmlFileName, reportName);
c1report.RenderToFile(pdfFileName, FileFormatEnum.PDF);

C1Report的Save方法导出的语法,可以参考文档:
http://helpcentral.componentone. ... t_C1Report_Save.htm

C1Report导出成xml文件的例子,可以在如下路径找到:
\Documents\ComponentOne Samples\Studio for WPF\C1.WPF.C1Report\C1WPFReport\CS\ExportXml\


C1Report在WinForm和WPF平台下的接口相似,所以推荐你看了博客。

C1PrintDocument的导出也很简单,代码参考:
  1. C1PrintDocuemt doc=new C1PrintDocument();
  2. doc.Export("MyDocument.xps");
复制代码


没有C1PrintDocument的导出例子,但有C1ReportViewer控件的例子,C1ReportViewer控件上自带保存pdf文件的按钮,该例子的路径:
\Documents\ComponentOne Samples\Studio for WPF\C1.WPF.ReportViewer\CS\ReportViewerSamples
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
来爱清
论坛元老   /  发表于:2015-1-20 16:42:00
5#
C1Report中RenderToFile、Save等方法的导出主要是在代码中调用;C1ReportViewer控件仅仅带了保存pdf文件的按钮。有没有自带保存Excel、pdf、Word等按钮的控件?
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-1-20 17:28:00
6#
回复 5楼来爱清的帖子

你的需求是控件带有Excel,pdf,word等按钮,没有这样的控件完全满足你的需求。如果需要多种按钮,需要自己添加按钮,然后用代码实现。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
来爱清
论坛元老   /  发表于:2015-1-20 17:34:00
7#
类似于WinForm里C1PrintDocument界面上的File As方式,WPF里有没有?
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-1-20 18:26:00
8#
回复 7楼来爱清的帖子

C1PrintDocument没有界面。你说的是WinForm平台下的C1PrintPreviewControl吧?WPF下没有这个控件。WPF下有C1ReportViewer, C1PdfViewer,C1DocumentViewer控件。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
来爱清
论坛元老   /  发表于:2015-1-21 22:22:00
9#
我定义了个Xml模板文件,设置页面为横向打印。用 Load() 方法加载模板后,用下面的代码想设置为横向打印:
  1. //C1Report c1r = new C1Report();
  2. c1r.Document.DefaultPageSettings.Landscape = true;
复制代码

预览还是横向,但打印出来仍然是纵向的。如何在代码里设置为横向?横向或纵向的设置,体现在Xml文件的哪里?
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-1-22 11:03:00
10#
回复 9楼来爱清的帖子

在报表设计器里可以直接设计横向打印报表(页设置->页面设置->方向:横向),然后生成xml文件。
然后使用C1Report.Load方法导入xml文件,打印。
  1. c1report.Load("testreport.xml", "新报表");
  2. c1r.PrintDialog();
复制代码

预览和打印都是横向的。

通过代码设置横向打印的代码参考:
  1. c1r.Layout.Orientation = OrientationEnum.Landscape;
复制代码


附件里是我测试横向打印的xml文件。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部