这是我的代码:
While dr2.Read()
Dim node = New TreeNode(dr2("chapterno").ToString)
geo.Nodes("toc").Nodes.Add(node)
node.Nodes.Add(dr2("lessonno").ToString)
End While
我有一个包含两个表的数据库。一章为章节,一章为每章的课程。我希望我的TreeView
看起来像第1章(父节点)有第1课,第2课等作为其子节点。但是当我运行我的代码时,它有太多的第1章,每个都有一节课。请帮我。非常感谢!
答案 0 :(得分:0)
未经测试,但概念是:您需要记住添加到树视图的最后一章和使用的节点。如果章节仍然相同,则仅使用章节点添加课程,如果章节不同,请添加新的章节点并将用于保护循环的变量设置为最后的值
Dim node as TreeNode = Nothing
Dim lastChapter as String = String.Empty
While dr2.Read()
Dim curChapter = dr2("chapterno").ToString
if curChapter Is Nothing OrElse curChapter <> lastChapter Then
node = New TreeNode(curChapter)
lastChapter = curChapter
geo.Nodes("toc").Nodes.Add(node)
End If
node.Nodes.Add(dr2("lessonno").ToString)
End While