表格与绑定

行组也可以设置绑定,这样我们可以很方便地将一个表格绑定到数据表。
例如,打印订单表中的某些列,代码非常简单:

Dim doc As New PrintDoc
Dim
rt As New prt.RenderTable
Dim
tb as Table = Tables("订单")
Dim
ColNames As String() = New String(){"产品", "客户","单价", "数量", "金额"}
For c As integer = 0 To ColNames.Length -1
    rt.Cells(0,c).Text = ColNames(c)
   
rt.Cols(c).Width = tb.Cols(ColNames(c)).PrintWidth
   
rt.Cells(1, c).Text = "[Fields!" & ColNames(c) & ".Value]" '设置绑定表达式
Next

rt.RowGroups(
0,1).Style.TextAlignVert = prt.AlignVertEnum.Center '第一行内容垂直居中
rt.RowGroups(
0,1).Header = prt.TableHeaderEnum.All '将第一行作为表头。
rt.RowGroups(
1,1).DataBinding.DataSource = BindTables("订单") '将第二行绑定到订单表
doc.Body.Children.Add(rt)
doc.Preview()

注意这一行代码:

rt.RowGroups(1,1).DataBinding.DataSource = BindTables("订单") '将第二行绑定到订单表

该行代码将表格的第二行绑定到订单表,这样第二行将根据订单表中的每一行数据,自动生成副本,完成整个表格的打印。


本页地址:http://www.foxtable.com/webhelp/topics/1256.htm