以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 分组打印 列控制 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=161342) |
-- 作者:yifan3429 -- 发布时间:2021/3/13 23:00:00 -- 分组打印 列控制 Dim doc As New PrintDoc Dim rt As Prt.RenderTable Dim rx As prt.RenderText Dim tbl As Table = Tables("订单明细") Dim Rows As List(Of DataRow) Dim Regions As List(Of String) = tbl.DataTable.GetValues("区域") doc.Pagesetting.LandScape = True For Each Region As String In Regions rx = New prt.RenderText rx.Style.FontSize = 14 rx.Style.FontBold = True rx.Style.Spacing.Bottom = 2 rx.Text = "区域: " & Region doc.Body.Children.Add(rx) rt = New prt.RenderTable rt.Style.Font = Tables("订单明细").Font rt.Style.TextAlignVert = prt.AlignVertEnum.Center rt.Style.GridLines.All = New prt.LineDef(0.3,Color.LightGray) rt.Style.Spacing.Bottom = 5 rt.CellStyle.Spacing.All = 1 rt.Style.Font = tbl.Font Rows = tbl.DataTable.Select("[区域] = \'" & Region & "\'") For c As Integer = 0 To tbl.Cols.Count - 1 rt.Cells(0,c).Text = tbl.Cols(c).Name rt.Cols(c).Width = tbl.Cols(c).PrintWidth For r As Integer = 0 To Rows.Count -1 rt.Cells(r + 1, c).Text = rows(r)(tbl.Cols(c).Name) Next Next rt.RowGroups(0,1).Header = prt.TableHeaderEnum.All doc.Body.Children.Add(rt) Next doc.preview() 上面的代码不能控制列,求助如何知加入部分列
|
-- 作者:有点蓝 -- 发布时间:2021/3/14 20:25:00 -- Dim Cols1() As String = {"来源列一","来源列二","来源列三"} Rows = tbl.DataTable.Select("[区域] = \'" & Region & "\'") For c As Integer = 0 To Cols1.length - 1 rt.Cells(0,c).Text = Cols1(c) rt.Cols(c).Width = tbl.Cols(Cols1(c)).PrintWidth For r As Integer = 0 To Rows.Count -1 rt.Cells(r + 1, c).Text = rows(r)(Cols1(c)) Next Next
|