容器的大小
如果你没有明确指定RenderArea的尺寸,那么RenderArea会自动根据子对象的位置和尺寸调整到最佳大小。
但是这时候,子对象的尺寸不能引用RenderArea的尺寸,否则不能正常显示。
理由很简单,因为在这种情况下,RenderArea的尺寸由子对象决定,而子对象的尺寸又由RenderArea的尺寸决定,这是一个死循环。
不信可以在命令窗口执行下面的代码,你会发现,不会有任何内容显示:
Dim
doc
As New PrintDoc
'定义一个报表
Dim rt As
New prt.RenderText '定义一个文本对象
Dim ra As
New prt.RenderArea
rt.Text = "Hello Foxtable"
'设置文本对象的内容
rt.Width
= "Parent.Width"
'宽度等于容器宽度
rt.Height
= "Parent.Height"
'高度等于容器高度
rt.Style.Borders.All = New prt.Linedef(1,
Color.Red) '设置边框
ra.Children.Add(rt) '加入到容器中
doc.Body.Children.Add(ra) '将容器加入到报表
doc.Preview() '预览
类似的原理适合于任何容器,包括表格。
本页地址:http://www.foxtable.com/webhelp/topics/1187.htm