3 4 5 6 DevExpress.XtraReports打印 - 11GX
首页 > DevExpress.XtraReports打印

DevExpress.XtraReports打印

 

使用DevExpress.XtraReports打印报表时,分别采用两种打印方式。以下面的打印样式为列作简要说明:

 

第一种:表头表尾保持不变,表中数据根据实际打印条数更改。如现在我要打印的学生为三个,则得到如下的报表:

实现方式:1、新建在XtraReport1中,分别在PageHeader中设计表头,在Detail中设计表尾,在pageFooter中设计出表中数据部分,如下图所示:

              2、报表的C#代码:

        /// /// 自己构造数据源,当然 可以从程序 中传入数据 源/// /// private DataTable CreateTable(){DataTable dt = new DataTable();dt.Columns.Add("class");dt.Columns.Add("name");dt.Columns.Add("number");//添加数据 DataRow dr1 = dt.NewRow();dr1.BeginEdit();dr1["class"] = "计算机一";dr1["name"] = "张三";dr1["number"] = "1234";dr1.EndEdit();dt.Rows.Add(dr1);DataRow dr2 = dt.NewRow();dr2.BeginEdit();dr2["class"] = "计算机一";dr2["name"] = "王五";dr2["number"] = "1235";dr2.EndEdit();dt.Rows.Add(dr2);DataRow dr3 = dt.NewRow();dr3.BeginEdit();dr3["class"] = "计算机二";dr3["name"] = "李四";dr3["number"] = "1236";dr3.EndEdit();dt.Rows.Add(dr3);return dt;}/// /// 给报表控件赋值/// private void DataBind(){DataTable dtSource = this.CreateTable();//学生信息this.myclasss.DataBindings.Add("Text", dtSource, "class");this.name.DataBindings.Add("Text", dtSource, "name");this.number.DataBindings.Add("Text", dtSource, "number");//打印日期this.dates.Text = DateTime.Now.ToShortDateString();}

            3、C#程序调用该报表代码:

        private void Print_Click(object sender, EventArgs e){XtraReport1 report = new XtraReport1();PreviewLocalizer.Active =  new ChineaseReportLocalizer();report.ShowPreviewDialog();}

 

 

第二种:整张表的样式都不变,当需要打印三位学生信息时,则会打印出三张报表。

效果如下:

实现方式:1、新建XtraReport2,在中设计整张打印报表(可以删除),设计如下图所示:

              2、C#代码与上面代码一致。

转载于:https://www.cnblogs.com/hhl-kf/archive/2012/07/26/print.html

更多相关:

  • 题目: 从上到下打印二叉树 III 请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印,其他行以此类推。 例如: 给定二叉树: [3,9,20,null,null,15,7],     3    /   9  20     /      15...

  • C语言中打印‘%’不能直接printf("%"),这里的'%'有特殊含义的,要想打印的话,需要输入printf("%%"),两个'%'才可以将它打印出来。C语言中的其他的特殊字符,以后再慢慢做整理。...

  • 在做B/S项目开发时。难免会遇到网页打印问题! 可以用css控制, @media print .a {display:block} .b {display:hidden} 好像是这样。把你不想打印的部分class设为b 首先在网页中添加:      
  •         之前做机房收费系统用的报表是Grid++Report,这次VB.NET重构中用到了VisualStudio自带的报表控件。刚開始当然对这块功能非常不熟悉,只是探究了一段时间后还是把它做出来了。        以下把在VisualStudio(我用的是VisualStudio2013,假设与您使用的版本号不同,过程中...

  • Q:设计器如何打开A:如果是安装的,那么直接到菜单下,打开润乾报表设计器就行了,如果是压缩包或者从别人那儿拷过来的,就运行 eportHomein下面的startup.bat就可以打开了。 Q:做一个报表最基本需要哪些东西A:一般来说,常见的报表上面是查询条件,下面是以表格形式列出的查询结果,所以一个润乾报表由两个文件组成。 比...

  • 前言:现在碰到了水晶报表调用存储过程的问题,问题是这样的:ERP软件里有很多的数据表,有些报表的字段要从多个数据表里取数据,并且要对数据进行处理,来作为报表的字段,我看了些资料,说可以通过存储过程来取数据和运算数据后直接插入到水晶报表里,注意报表有多个字段大多字段需要运算的,要怎样做? 回复: 1、在项目中添加一个xsd,在设计界面...

  • 大多数情况下报表的数据源SQL都是固定的,但有时也需要动态变动其中某些部分实现动态拼出,比如在报表应用中允许用户通过选择表和字段查询自己关心的报表数据,报表开发时则希望对同类报表(明细或汇总)使用同一模板。这时就需要在报表中接收相应参数拼接出动态SQL进行查询后制作动态报表。润乾集算报表提供了两种处理动态SQL的方法,使用宏和集算脚...

  • 在C++有两种字符串流,一种在sstream中定义, 另一种在strstream中定义。 它们实现的东西基本一样。 strstream里包含 class strstreambuf; class istrstream; class ostrstream; class strstream; 它们是基于C类型字符串char*编写的...

  • 此文章完成度【100%】留着以后忘记的回顾。多写多练多思考,我会努力写出有意思的demo,如果知识点有错误、误导,欢迎大家在评论处写下你的感想或者纠错。     ORM介绍:对象关系映射(英语:(Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实现面向对象编程...

  • Bootstrap框架和inconfont、font-awesome使用 iconfont的使用:https://www.cnblogs.com/clschao/articles/10387580.html Bootstrap介绍   Bootstrap是Twitter开源的基于HTML、CSS、JavaScript的前端框架。  ...

  • Log4j->SLF4j->Logback是同一个人开发的 import lombok.extern.slf4j.Slf4j; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.test.context.Spr...

  • HTML页面代码块: 1 2 3 4 5 6

    -->