使用ActiveReports创建动态区段报表

操作方法

  • 01

    ActiveReports可以通过API实现运行时的报表创建,让一些报表的一些动态功能能够实现。接下来就以如何创建动态区段报表为例,说一下灵活运用API的方法。首先看一下最终创建报表的效果:简单的说一下创建步骤:

  • 02

    创建一个报表实例

  • 03

    动态的添加区段和控件

  • 04

    修改报表区段和控件的相关细节

  • 05

    给报表指派设置数据源

  • 06

    将报表绑定到数据源

  • 07

    下段代码就能完成所有步骤: privatevoidForm1_Load(objectsender, EventArgs e) { rpt =newSectionReport(); //Adding Page Header/Footer sections rpt.Sections.InsertPageHF(); rpt.Sections[0].BackColor = Color.LightGray; //Adding Detail section rpt.Sections.Insert(1,newDetail()); rpt.Sections[1].BackColor = Color.PeachPuff; rpt.Sections[1].Height = 1.5f; //Adding label to display first column's name GrapeCity.ActiveReports.SectionReportModel.Label lblCategoryID =newGrapeCity.ActiveReports.SectionReportModel.Label(); lblCategoryID.Location =newPointF(0, 0.05F); lblCategoryID.Text ="Category ID"; lblCategoryID.Alignment = GrapeCity.ActiveReports.Document.Section.TextAlignment.Center; lblCategoryID.Font =newSystem.Drawing.Font("Arial", 10, FontStyle.Bold); rpt.Sections[0].Controls.Add(lblCategoryID); //Adding label to display second column's name GrapeCity.ActiveReports.SectionReportModel.Label lblCategoryName =newGrapeCity.ActiveReports.SectionReportModel.Label(); lblCategoryName.Location =newPointF(1.459f, 0.05f); lblCategoryName.Size =newSizeF(1.094f,0.2f); lblCategoryName.Text ="Category Name"; lblCategoryName.Font =newSystem.Drawing.Font("Arial", 10, FontStyle.Bold); rpt.Sections[0].Controls.Add(lblCategoryName); //Adding label to display third column's name GrapeCity.ActiveReports.SectionReportModel.Label lblDescription =newGrapeCity.ActiveReports.SectionReportModel.Label(); lblDescription.Location =newPointF(3.114f, 0.05f); lblDescription.Text ="Description"; lblDescription.Font =newSystem.Drawing.Font("Arial", 10, FontStyle.Bold); rpt.Sections[0].Controls.Add(lblDescription); //Adding label to display fourth column's name GrapeCity.ActiveReports.SectionReportModel.Label lblPicture =newGrapeCity.ActiveReports.SectionReportModel.Label(); lblPicture.Location =newPointF(5.219f, 0.05f); lblPicture.Alignment = GrapeCity.ActiveReports.Document.Section.TextAlignment.Center; lblPicture.Text ="Picture"; lblPicture.Font =newSystem.Drawing.Font("Arial", 10, FontStyle.Bold); rpt.Sections[0].Controls.Add(lblPicture); //Adding Textbox to display first column's records GrapeCity.ActiveReports.SectionReportModel.TextBox txtCategoryID =newGrapeCity.ActiveReports.SectionReportModel.TextBox(); txtCategoryID.Location =newPointF(0,0); txtCategoryID.Alignment = GrapeCity.ActiveReports.Document.Section.TextAlignment.Center; rpt.Sections[1].Controls.Add(txtCategoryID); //Adding Textbox to display second column's records GrapeCity.ActiveReports.SectionReportModel.TextBox txtCategoryName =newGrapeCity.ActiveReports.SectionReportModel.TextBox(); txtCategoryName.Location =newPointF(1.459f,0); rpt.Sections[1].Controls.Add(txtCategoryName); //Adding Textbox to display third column's records GrapeCity.ActiveReports.SectionReportModel.TextBox txtDescription =newGrapeCity.ActiveReports.SectionReportModel.TextBox(); txtDescription.Location =newPointF(3.114f,0); rpt.Sections[1].Controls.Add(txtDescription); //Adding Picture control to display image GrapeCity.ActiveReports.SectionReportModel.Picture picture =newPicture(); picture.Location =newPointF(5.219f,0); rpt.Sections[1].Controls.Add(picture); // Setting report's data source conn =newOleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\stduser\Documents\ComponentOne Samples\ActiveReports Developer 7\Data\NWIND.mdb;Persist Security Info=False"); System.Data.OleDb.OleDbCommand cmd =newSystem.Data.OleDb.OleDbCommand("SELECT * FROM Categories", conn); conn.Open(); reader = cmd.ExecuteReader(); rpt.DataSource = reader; // Assigning DataField properties of controls in the detail section txtCategoryID.DataField ="CategoryID"; txtCategoryName.DataField ="CategoryName"; txtDescription.DataField ="Description"; picture.DataField ="Picture"; reader.Close(); conn.Close(); }

(0)

相关推荐

  • Excel如何创建动态数据透视表

    数据透视表可以快速筛选以及汇总数据,方便查看以及分析数据.如果你所在部门的工作表数据经常变动(比如:仓库进销存.财务往来账等),而你希望数据发生变化后,数据透视表的内容随之变化,那么,你可以创建动态数 ...

  • Excel列表法创建动态源透视表

    Excel数据透视表技巧——列表法创建动态源透视表

  • 怎么在Steam中创建动态收藏

    Steam是现在非常流行的一款游戏平台,有些新用户不知道怎么在Steam中创建动态收藏,接下来小编就给大家介绍一下具体的操作步骤.具体如下:1. 首先第一步先打开电脑中的[Steam]软件,接着根据下 ...

  • cad创建动态图块

    本详细的介绍了创建动态门图块的过程和方法,让读者掌握创建动态图块的方法和步骤,从而能对更好的学习cad软件. 操作方法 01 正常启动autocad 2013软件,系统自动创建一个空白文件,执行&qu ...

  • Excel技巧:为数据区域创建动态快照

    许多用户可能不会注意到Excel中这样一个非常有用的功能:为数据区域创建一个动态“快照”,并将其放置在工作表中所需的位置。这里的动态“快照”指的是与数据区域相链接的图片,它可以随数据区域中数据的变化而 ...

  • linux静态库和动态库的创建与使用

    静态库与动态库的创建与使用 1. 基本概念 静态库:链接时,库与编译生成的 .o 文件一起打包到可执行文件中。 linux / windows 下扩展名分别为:.a / .lib 动态库:链接时,不会 ...

  • Access2007怎么创建交叉报表?

    报表中的数据可以源于交叉查询建立的数据表,为了能及时更新报表中的数据,可以直接将报表建立在交叉查询之上,这样就可以在报表中随时反映数据的变化. 1.在数据库中单击“创建”选项卡下“报表”组中的“报表设 ...

  • Axure动态面板两种创建方法有什么区别?

    Axure动态面板有两种创建方法,这两种方法有什么区别呢?下面我们就来详细介绍一下. 第一种创建方法: 1.元件库中有单独的动态面板元件,可以拖出来直接用,也是常用方法: 2.效果是这种,空的动态面板 ...

  • 怎么创建电脑版ppt中的动态倒计时

    电脑版PPT软件被很多人使用,用来编辑幻灯片等,有的用户在使用该软件时,为了使自己的幻灯片更加吸引人,因此想要创建动态倒计时,但是却不知道如何创建,那么小编就来为大家介绍一下吧.具体如下:1. 第一步 ...