rdlc 合并行的方法
方案一:
rdlc报表的列可以(横向)合并,行不可以(纵向)合并。用记事本打开rdlc文件的话,可以看到它本身是xml格式的文档,但是通过修改xml它也无法做到行的合并。在网上搜索解决方法并探索尝试,终于总结出比较完美的一种解决方法
初始状态如下图:
设置成功后如下图:
1.首先在【文本框属性】-【边框】将上下单元格共有的边框线设为不可见
2【文本框属性】-【对齐】.将文本框的“垂直”设为“靠下”,“下边框”设为“0pt”,“靠上”设为“12pt”(pt大小依实际情况而定)
ps:若标题部分字体不可见,请将文本框布局置为顶层。
方案二:
最终效果:
要合并内容行,我想是不可能的,我上网找了N久,也没找到,囧~
后来经过自己的短暂思考,终于想到另一种合并了,:-)
实现方法很简单,就是在报表属性的代码里加上以下这段代码:
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,它是用来控制每行显示
多少个字符的)
然后在要合并的地方加上:code.GetRemark(RowNumber(Nothing), Fields!Remark.Value)
再把那个单元格的边框设为NONE,大功告成!
这里啰嗦一下思路:
其实我是将要合并显示的字段拆成几段来显示的,我自己写了个函数,参数是当前行数和字段值,返回被截取的字符串,
所以我这个合并最合适的表格是固定行,我这里是用在打印送货单上的,
我的送货单是不管数据有多少条(我这里每次都不会超过11行),
每次我都是显示13行,显示固定行的方法我是上网找的,这里就不啰嗦了,(*^__^*)
报表我研究的不深,此文只是分享下方法,如有什么地方说得不好,欢迎指出~:-)