ActiveReports 如何使用后台代码操作页面报表元素

发布时间:2014/10/28 00:10 发布者:iceman

返回博客中心

UI界面是报表设置的最重要内容之一。目前最终用户的要求已经不仅仅满足于报表的易读性,对于报表的美观性需求也逐渐增加。做为市场是最畅销的报表控件,ActiveReports 报表控件 拥有灵活的控制布局能力,在本篇博客中,我们将阐述如何使用后台代码操作页面报表中的元素。

下面,我们将分别阐述连续式页面报表和固定式页面报表的实现方法。

连续式页面报表 :

在连续式页面报表中,报表控件已经直接添加到报表 ReportItems 集合中。因此,首先需要获取 ReportItems 集合,通过控件的Name或者是Index定位相应控件,再更改控件的属性。代码如下:

Dim a As String = rpt.Report.Body.ReportItems(1).Name
rpt.Report.Body.ReportItems(a).Left = "2in"

 

Before

固定式页面报表:

固定式页面报表和连续式页面报表相同,报表控件已经直接添加到报表 ReportItems 集合中。同样,首先需要获取 ReportItems 集合,通过控件的Name或者是Index定位相应控件,再更改相应控件的属性。

但是,和连续式页面报表不同的是,Pages 集合包含在 FixedPage 对象中。

代码如下:

Dim doc As New Document.PageDocument(rpt)
Dim FP As PageReportModel.FixedPage
FP = CType(doc.PageReport.Report.Body.ReportItems(0), PageReportModel.FixedPage)
Dim txt As PageReportModel.TextBox
For j = 0 To Pagecount - 1
     For i = 0 To ItemsCount - 1
          Try
              txt = CType(FP.Pages(j).ReportItems(i), PageReportModel.TextBox)
              FP.Pages(j).ReportItems(i).Left = "2in"
          Catch
          End Try
     Next
Next

 

更详细实现方法请参考Demo:

VS2012+ ActiveReports8 + .NET 4.0

C#      :

VB.NET:

 

更多ActiveReports报表功能请参考:/developer/activereports


关于葡萄城

赋能开发者!葡萄城是专业的集开发工具、商业智能解决方案、低代码开发平台于一身的软件和服务提供商,为超过 75% 的全球财富 500 强企业提供服务。葡萄城专注控件软件领域30年,希望通过模块化的开发控件、灵活的低代码应用开发平台等一系列开发工具、解决方案和服务,帮助开发者快速响应复杂多变的业务需求,最大程度地发挥开发者的才智和潜能,让开发者的 IT 人生更从容更美好。

了解详情,请访问葡萄城官网