Dim doc As New PrintDoc '定义一个报表
Dim rt As New prt.RenderText '定义一个文本对象
Dim lb1 As WinForm.Label = e.Form.Controls("Label1")
Dim lb2 As WinForm.Label = e.Form.Controls("Label2")
Dim lb3 As WinForm.Label = e.Form.Controls("Label3")
Dim txt1 As WinForm.TextBox = e.Form.Controls("TextBox1")
Dim txt2 As WinForm.TextBox = e.Form.Controls("TextBox2")
doc.Stacking = prt.StackingRulesEnum.InlineLeftToRight
'--------页面设置
Doc.PageSetting.Height=139.7 '报表高度5.5英寸
Doc.PageSetting.Width=254 '报表宽度10英寸
Doc.PageSetting.LeftMargin = 10 '设置左边距
Doc.PageSetting.RightMargin = 10 '设置右边距
Doc.PageSetting.TopMargin = 10 '设置上边距
Doc.PageSetting.BottomMargin = 10 '设置下边距
'--------标题设置
rt.text=lb1.text
rt.Style.Font=new font("宋体",22 , FontStyle.Bold)'字体设置
rt.Style.TextAlignHorz = prt.AlignHorzEnum.Center '文本内容水平居中
Doc.body.Children.add(rt)
'------编号标签
rt=new prt.rendertext
rt.text=lb3.text
rt.width=12
Doc.Body.Children.Add(rt)
'------编号内容
rt = new prt.rendertext
rt.Text =txt1.Text '设置文本对象的内容
rt.Width = 25 '对象宽度为25毫米
doc.Body.Children.Add(rt) '将文本对象加入到报表
'------日期标签
rt = New prt.RenderText '再次新建一个文本框
rt.Text = lb2.text '设置文本对象的内容
rt.Width = 15 '对象宽度为15毫米
rt.Style.Spacing.Left=30 '离左对象30毫米
rt.Style.Borders.All = New prt.Linedef
doc.Body.Children.Add(rt) '将文本对象加入到报表
此主题相关图片如下:shd1.png

日期那个标签会自动换行,而且外框没了
如果把红色字体代码换成
rt.Style.Spacing.Left=3 '离左对象3毫米
就正常了

此主题相关图片如下:shd2.png

请教为何会出现这种情况