首页 > 代码库 > XtraReport 添加空行的办法,很详细
XtraReport 添加空行的办法,很详细
这两天为了做报表,研究了一下XtraReport 。为了添加空行,想了很多办法。其中如果有分组时,网上给出的办法就会失败。
现将经验公布一下,希望各位都能少走弯路。
1.加入自定义函数CreateCellArray,用于创建空行。
2.生成报表的 FillEmptySpace 事件,填写如下代码。
3.tableDetail 是指细节 区带
4.****注意,如果有分组,必须将分组PrintAtBottom设置为true,就是将其下沉。
private void CreateCellArray(XRTableRow xrRow, XRTableRow xrRowTemplate) { int Xmargin = 0; for (int i = 0; i < xrRowTemplate.Cells.Count; i++) { XRTableCell xrcell = new XRTableCell(); xrcell.BorderWidth = 1; xrcell.Borders = (DevExpress.XtraPrinting.BorderSide)((BorderSide.Left | BorderSide.Right) | BorderSide.Bottom); xrcell.WidthF = xrRowTemplate.Cells.WidthF; xrcell.BackColor = xrRowTemplate.Cells.BackColor; xrcell.Height = xrRowTemplate.Height; if (i != 0) { xrcell.Location = new Point(Convert.ToInt32(Xmargin + xrRowTemplate.Cells.WidthF), 0); } else { xrcell.Location = new Point(0, 0); } xrRow.Cells.Add(xrcell); } } private void XR_HT_RT_FillEmptySpace(object sender, BandEventArgs e) { XRTable table = tableDetail;//Template Detail Band XRTable int iheight = table.Rows[table.Rows.Count - 1].Height; XRTable xrTable = new XRTable(); xrTable.Size = new Size(table.Width, e.Band.Height - 1); xrTable.BorderWidth = table.BorderWidth; xrTable.Location = table.Location; xrTable.BackColor = table.BackColor; int SpaceRowCount = e.Band.Height / iheight; XRTableRow[] xrRow = new XRTableRow[SpaceRowCount]; if (SpaceRowCount > 0) { for (int i = 0; i < SpaceRowCount; i++) { xrRow = new XRTableRow(); xrRow.Size = new Size(table.Width, iheight); xrRow.Location = new Point(table.Location.X, i * iheight); xrRow.Borders = (DevExpress.XtraPrinting.BorderSide)((BorderSide.Left | BorderSide.Right) | BorderSide.Bottom); xrRow.BorderWidth = 1; xrRow.BorderColor = table.Rows[table.Rows.Count - 1].BorderColor; //CreateCell XRTableRow row = table.Rows[table.Rows.Count - 1]; CreateCellArray(xrRow, row); } xrTable.Rows.AddRange(xrRow); e.Band.Controls.Add(xrTable); } }
XtraReport 添加空行的办法,很详细
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。