我会在这个专题中,逐步把我掌握的专业报表的知识分享给大家
最终目的:打造一个可视化的专业报表设计器
下一篇 和俺一起玩专业报表 2 汉化
第一篇:
目的:把打印预览的控件放到自己的窗口中。
作用:通过命令窗口,实时查看自己代码的效果
效果:
此主题相关图片如下:无标题.jpg
步骤:
一、建立一个狐表项目,并建立一个主窗口(我的叫'窗口1')
二、在全局代码中加入以下代码:
'报表预览器对象
Public _MyRDL As C1.Win.C1Preview.C1PrintPreviewControl
Public _MyDoc As C1.C1Preview.C1PrintDocument
Public _MyPropertyGrid As System.Windows.Forms.PropertyGrid ‘这个留在,以后要用
三、窗口1 加入SplitContainer控件,名称SplitContainer1,停靠Fill,固定分区Panel2
SplitContainer1.Panel2 加入SplitContainer控件,名称SplitContainer2,停靠Fill,固定分区Panel2
SplitContainer2.Panel1 加入TabControl控件,名称TabControl1,停靠Fill
四、事件
窗口1的AfterLoad事件加入
_MyRDL = New C1.Win.C1Preview.C1PrintPreviewControl
_MyDoc = New C1.C1Preview.C1PrintDocument
_MyRDL.Document = _MyDoc
_MyPropertyGrid = New System.Windows.Forms.PropertyGrid
Dim sp1 As WinForm.SplitContainer = e.Form.Controls("SplitContainer1")
_MyRDL.Dock = 5
sp1.Panel1.BaseControl.Controls.Add(_MyRDL)
窗口1的AfterClose事件加入
_MyPropertyGrid = Nothing
_MyDoc.Dispose()
_MyDoc = Nothing
_MyRDL.Dispose()
_MyRDL = Nothing
这样就可以运行主窗口了
应用主窗口,打开命令窗口键入代码
_MyDoc.Body.Children.Clear() ‘加上这句,是清除原有的对象
Dim rt As New prt.RenderText '定义一个文本对象
rt.Text = "haohaohaohoassskankanxxxxxxx" '设置文本对象的内容
_MyDoc.Body.Children.Add(rt)
_MyDoc.Generate() ’这句替代 doc.Preview() '预览
运行一下,看看效果吧。
[此贴子已经被作者于2017/12/16 8:49:06编辑过]