
1对于直接拖入Rdlc报表列表控件中的字段,列表显示控件的显示方式为:相当于每一个列表显示一行数据。如果直接在列表中拖入表控件,则会提示“表“table1”所在的列表中没有为其定义的组表达式。若要使用列表中的数据区域,列表必须包含组表达式。 ”
2对于分组属性(Grouping),拖入表控件,则表显示的详细内容为当前组的数据,Count函数则是对当前组进行行数统计。
3对于子报表和钻取报表序号注意的是,由于子报表或者钻取报表是分开的两个Rdlc报表文件,报表的路径很关键。loaclreportReportEmbeddedResource属性是用来设置嵌入资源的名称,格式为“数据集报表文件明rdlc”,于此相对应的报表路径设置为loaclreportReportPath,用来设置文件路径。rdcl默认的读取方式为“嵌入资源”。但是,一旦设置了ReportPath属性,ReportEmbeddedResource就会失效。
4对于子报表,需要在子报表加载事件reportViewer1LocalReportSubreportProcessing += new MicrosoftReportingWinFormsSubreportProcessingEventHandler(LocalReport_SubreportProcessing)的时候,想reportsource中加载数据源。
5对于钻取报表,需要在子报表加载事件reportViewer1Drillthrough += new MicrosoftReportingWinFormsDrillthroughEventHandler(reportViewer1_Drillthrough);
中加载数据源。
6对于在钻取报表或者子报表时,发生错误“尚未指定 报表定义”,一般是由于报表路径问题产生的,在各自对应事件加载数据源的同时,再次指定转向报表的路径即可解决此问题。(目前此问题的具体原因尚为真正查明)
7C#编程的过程中间,如何获取rdlc报表中的各个控件呢?以下实例显示了如果 *** 作界面控件:
ControlCollection coll = ReportViewer1ParentControls;
int oldIndex = collIndexOf(ReportViewer1);
ReportViewer newViewer = new ReportViewer();
collAddAt(oldIndex, newViewer);
collRemove(ReportViewer1);
8在报表中,用程序设置报表参数:
ReportParameter rp = new ReportParameter("v1", ConfigurationManagerAppSettings["v1"]ToString());
thisReportViewer1LocalReportSetParameters(new ReportParameter[] { rp });
当使用C1DocumentViewer在物理打印机上横向打印文档,它总是保持原来的竖向打印。只能在打印对话框中手动的选择打印方向,这样改变方向。
之所以会这样,主要是因为它继承于MS DocumentViewer而且当单击打印按钮d出的打印对话框,并没有选项去自定义默认的打印对话框。然而,在XPS打印机打印的时候没有问题。
详细的介绍,请查考下面的博客
http://bloggcpowertoolscomcn/post/C1DocumentViewer_Customaspx
实现方法很简单,就是在报表属性的代码里加上以下这段代码:
复制代码代码如下:
Function GetRemark(rowNum As Integer, remark As String) As String
Dim cutLength As Integer = 10
Return Mid(remark, cutLength (rowNum - 1) + 1, cutLength)
End Function
(说明:这个函数有两个参数,一个int,一个string,返回值是string,函数里面有个int变量cutLength,它是用来控制每行显示
多少个字符的)
然后在要合并的地方加上:codeGetRemark(RowNumber(Nothing), Fields!RemarkValue)
再把那个单元格的边框设为NONE,大功告成!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)