vb treeview问题

我有这样一个数据库上级单位编号单位编号单位名称00**总校000001**中心小学0001000111**中心小学一年一班想用vbtreeview控件把数据库用树形结构表... 我有这样一个数据库
上级单位编号 单位编号 单位名称
00 **总校
00 0001 **中心小学
0001 000111 **中心小学一年一班
想用vb treeview控件把数据库用树形结构表示出来。
我的代码是
Function outtree()
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
Dim str1 As String
str1 = "select * from dwgl "
rs.Open str1, conn, 1, 1
Do While Not rs.EOF
If Trim(rs.Fields("上级单位编号").Value) = "" Then '添加父节点
Set nodx = TreeView1.Nodes.Add(, , rs.Fields("单位编号").Value, rs.Fields("单位名称").Value, 1)
ElseIf Trim(rs.Fields("上级单位编号").Value) <> "" Then
'添加子节点
Set nodx = TreeView1.Nodes.Add(rs.Fields("上级单位编号").Value, tvwChild, rs.Fields("单位编号").Value, rs.Fields("单位名称").Value, 1)
End If
rs.MoveNext
Loop
rs.close
Set rs = Nothing
End Function

执行完之后,出现这个错误 :实时错误 '35601',未发现元素。
请大家指点一下。
我改成这样的,还是不行。
展开
 我来答
网海1书生
科技发烧友

2010-03-19 · 擅长软件设计、WEB应用开发、小程序
网海1书生
采纳数:12311 获赞数:26228

向TA提问 私信TA
展开全部
TreeView的Add方法中的参数Key不能够使用纯数字,应该是英文字母或字母与数字的组合,所以要么你在数据库中把所有编号字段改为类似n00、n0001的形式,要么就在程序中把Add语句改一下:

Set nodx = TreeView1.Nodes.Add(, , rs.Fields("单位编号").Value, rs.Fields("单位名称").Value, 1)
改为
Set nodx = TreeView1.Nodes.Add(, , "n" & rs("单位编号"), rs("单位名称"), 1)

Set nodx = TreeView1.Nodes.Add(rs.Fields("上级单位编号").Value, tvwChild, rs.Fields("单位编号").Value, rs.Fields("单位名称").Value, 1)
改为
Set nodx = TreeView1.Nodes.Add("n" & rs("上级单位编号"), tvwChild, "n" & rs("单位编号"), rs("单位名称"), 1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式