找回密码
 立即注册

QQ登录

只需一步,快速开始

Lenka.Guo 讲师达人认证 悬赏达人认证
超级版主   /  发表于:2021-8-23 17:36  /   查看:2511  /  回复:0
背景信息
报表在初始化设计时,默认纸张尺寸为A4纸,我们可以根据实际要打印或者展示的媒介,在运行时修改纸张的宽度,以保证所有信息可以在一页或者按照指定的页数渲染。
但是由于报表纸张不支持表达式,因此无法在运行时动态根据表达式来指定,我们可以在报表展示前,动态修改报表纸张的宽度和高度,以实现运行时修改报表纸张宽度。


解决方法:

1. 新建项目


2. 新建报表文件 默认为A4


3. 在加载报表时,New Report对象


4. 修改Report对象的PageWidth 及Page Height
  1.         private void viewer1_Load(object sender, EventArgs e)
  2.         {
  3.             GrapeCity.ActiveReports.PageReport rpt = new GrapeCity.ActiveReports.PageReport(new System.IO.FileInfo("PageReport1.rdlx"));
  4.          
  5.             GrapeCity.ActiveReports.Document.PageDocument rptd = new GrapeCity.ActiveReports.Document.PageDocument(rpt);
  6.             rptd.PageReport.Report.PageWidth = "5cm";
  7.             rptd.PageReport.Report.PageHeight = "3cm";
  8.             this.viewer1.LoadDocument(rptd);

  9.         }
复制代码




如果是 JSViewer MVC 项目或Web项目都可参考步骤4 中的代码,在New报表对象后去修改纸张的宽度和高度。


本帖子中包含更多资源

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

x

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部