DataReport使用手记
06年的一篇blog,转过来:
前几天,帮同事改一个VB的课业程序,具体任务就是在程序中添加报表功能,由于考虑到部署环境的问题,所以没有采用我以前惯用的Excel实现,而采用了同事提出的VB自带的DataReport实现,查到的资料大多数都是在DataReport数据源上连接DataEnvironment,MSDN也有这方面的一篇文章,可惜英文版和中文版一样的模糊,移到程序中也无法运行,后来根据实验中的错误提示在网上查到一个提问题的帖子,在他的帖子中倒是找到了正确的方法,原来直接把数据源链接为RecordSet就可以了,DataMember可以不用赋值,DataField赋值为字段名称,DataReport的空间索引必须以控件名称索引即可,下面是源代码。我在details Section按顺序建立了8个TextBox和Label接受字段值和字段名。
Set DataReport.DataSource = rs_data2
If rs_data2.RecordCount = 0 Then
Exit Sub
End If
Dim i As Integer
Dim j As String
rs_data2.MoveFirst
Do While Not rs_data2.EOF
For i = 0 To 7
With DataReport
j = i + 1
.Sections("Section1").Controls("Label" + j).Caption = rs_data2.Fields(i).Name + ":"
.Sections("Section1").Height = 60
If Len(rs_data2.Fields(0)) <> 0 Then
.Sections("Section1").Controls("Text" + j).DataField = rs_data2.Fields(i).Name
Else
.Sections("Section1").Controls("Text" + j).DataField = ""
End If
End With
Next i
rs_data2.MoveNext
Loop
DataReport.Show
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· [AI/GPT/综述] AI Agent的设计模式综述
2006-07-04 [转贴]一个比较那个的代码!