今天在做报表的时候碰到需要动态显示报表列的问题,阿泰的那篇文章比较不错,但是在动态显示列的情况下,我们还需要动态设置它的宽度,于是我做了一些尝试。。。
由于是采用的PULL模式,所以报表里面的内容不方便写在这里,等我用PUSH的方式改写以后再与大家分享。。。
其实很简单就一行语句:
CrystalReportSource1.ReportDocument.ReportDefinition.ReportObjects["custDesc1"].Width = CrystalReportSource1.ReportDocument.ReportDefinition.ReportObjects["custDesc1"].Width + 1200;
其中custDesc1是我报表里面的公式字段,
如图, 前面那语句的作用是在ASPX.CS后台里面动态设置公式字段custDesc1的宽度
还有一种方法 利用SECTION区域来访问里面的OBJECT:
CrystalReportSource1.ReportDocument.ReportDefinition.Sections[0].ReportObjects["getdesc1"].Width = CrystalReportSource1.ReportDocument.ReportDefinition.Sections[0].ReportObjects["getdesc1"].Width + 1000;
在这里使用了SECTION 注意标号是从0开始的, 0对应报表里面的SECTION1 至于那个后面的1000的单位, 在VS里面显示的是缇,不过我也没注意这是个什么单位,如果有哪位仁兄知道,还请不吝赐教~
出处:http://blog.csdn.net/clever_yang/archive/2009/02/24/3932918.aspx