找回密码
 立即注册

QQ登录

只需一步,快速开始

iamzhaiwei

初级会员

30

主题

100

帖子

260

积分

初级会员

积分
260

活字格认证

iamzhaiwei
初级会员   /  发表于:2014-5-12 13:55  /   查看:5046  /  回复:3
如题,在连续页面报表中,Matrix的列数是根据数据源动态变化的,列数可能会多也可能会少,列宽度如何动态变化?

3 个回复

倒序浏览
roger.wang
社区贡献组   /  发表于:2014-5-12 15:40:00
沙发
回复 1楼iamzhaiwei的帖子

抱歉,连续页面报表,目前无接口可获得在动态匹配数据源的时候调整列宽。


CPL中Matrix设置列宽,是在设计时固定的:



本帖子中包含更多资源

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

x
回复 使用道具 举报
iamzhaiwei
初级会员   /  发表于:2014-5-13 11:36:00
板凳
回复 2楼roger.wang的帖子

我根据列数和列宽算出一个乘机,用这个乘机来动态设置报表的宽度,这样可行吗?
回复 使用道具 举报
roger.wang
社区贡献组   /  发表于:2014-5-13 12:31:00
地板
回复 3楼iamzhaiwei的帖子

电话沟通:这个思路可以试试,如下是2种途径
途径一:加载RDLX文件

  1.             string strPath = GetPath(@"\Page\Main_Report.rdlx");
  2.             PageReport pobjReport = new PageReport(new System.IO.FileInfo(strPath));
  3.             PageDocument  document = new GrapeCity.ActiveReports.Document.PageDocument(pobjReport);
  4.             document.LocateDataSource += document_LocateDataSource;
  5.             viewer1.LoadDocument(document);
  6.             
  7.             document.PageReport.Report.Width = 100; // 根据您说的计算出报表宽度赋值
复制代码



途径二:代码实现页面报表的TextBox、Matrix

Matrix API参考文档:GrapeCity.ActiveReports.v8 Assembly > GrapeCity.ActiveReports.PageReportModel Namespace : Matrix Class

参考博客地址:如何运行时创建ActiveReports之:页面报表(PageReports)

本帖子中包含更多资源

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

x
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部