请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

neptunejn

注册会员

6

主题

15

帖子

53

积分

注册会员

积分
53

活字格认证

neptunejn
注册会员   /  发表于:2015-11-23 13:53  /   查看:4479  /  回复:3
用户需求,一个数据报表,其中根据A字段分组,每组要换页,最后有一行合计行,合计行跟在最后一组的后面不换页。
使用C1.C1Report.C1Report了生成报表。
把GroupFooter的ForcePageBreak属性设置成PageAfter。
可以实现每组换页。但最后的合计行也会被换页。
请问应该如何在代码中控制最后一组的时候不换页?
现有思路是在Report.StartSection事件中判断page是否等于最大页数,如果是就把ForcePageBreak改成none,
是否能实现,还有怎样得到最大页数?
以上,求解。
谢谢

3 个回复

倒序浏览
Alice
社区贡献组   /  发表于:2015-11-23 16:29:00
沙发
回复 1楼neptunejn的帖子

在报表插入新页很常见,您可以使用StartDoc-EndDoc 方法还是Generate 方法。
请参考产品博客:
http://blog.gcpowertools.com.cn/ ... oc-vs-generate.aspx
在report生成之前,是无法得知页数的。
因此需要首先调用Render方法生成,然后通过C1Report.GetPageCount方法获取。
代码参考:
  1.   c1Report1.Load(@"C:\Users\stduser\Desktop\PageCount.xml", "Customers Report");
  2.             c1Report1.Render();
  3.             MessageBox.Show("Total Number of Page = " + c1Report1.GetPageCount().ToString());
复制代码
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
neptunejn
注册会员   /  发表于:2015-11-23 16:50:00
板凳
谢谢。
问题已解决,通过数据来控制,实现了用户的要求。
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-11-23 17:03:00
地板
回复 3楼neptunejn的帖子

不用客气。
为了给你提供更优质的服务,请对本次服务进行评分。我们会认真对待你提出的宝贵意见,谢谢        
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部