TreeView不显示的问题?
我通过SQLServer数据库动态生成TreeView 用递归
可是树没有显示数据,麻烦各位看一下,问题在哪?
表结构如下:
字段 数据类型 长度
NodeID int 4
ParentId varchar 50
NodeName varchar 50
程序如下:
Imports System.Data
Imports System.Data.SqlClient
Imports System.Configuration
Imports System.Collections
Imports Microsoft.Web.UI.WebControls
Imports System.ComponentModel
Imports System.Web
Imports System.Web.SessionState
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.HtmlControls
Public Class WebForm1
Inherits System.Web.UI.Page
Protected WithEvents TreeView1 As Microsoft.Web.UI.WebControls.TreeView
Dim mySet As New DataSet()
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim myConnection As New SqlConnection(ConfigurationSettings.AppSettings("connectionString"))
myConnection.Open()
CreateRenderDataSet()
initTree(TreeView1.Nodes, "", 1)
myConnection.Close()
End Sub
Private Sub CreateRenderDataSet()
Dim myConnection As New SqlConnection(ConfigurationSettings.AppSettings("connectionString"))
myConnection.Open()
Dim myCommand As New SqlDataAdapter("Select * From Left_tab", myConnection)
myCommand.Fill(mySet, "Left_tab")
End Sub
Private Sub initTree(ByVal Nds As Microsoft.Web.UI.WebControls.TreeNodeCollection, ByVal mparentId As String, ByVal levelId As Integer)
Dim dv As New DataView()
Dim tmpNode As New Microsoft.Web.UI.WebControls.TreeNode()
Dim IntId As String
Dim intLevel As Integer
Dim dvrow As DataRowView
dv.Table = mySet.Tables("Left_tab")
Dim sql As String = "ParentId = '" & mparentId & "' and NodeID = '" & levelId & "'"
dv.RowFilter = sql
For Each dvrow In dv
tmpNode = New TreeNode()
tmpNode.ID = dvrow("ParentId")
tmpNode.Text = dvrow("NodeName")
IntId = dvrow("ParentId")
'If (dvrow("Url") <> "") Then
' tmpNode.NavigateUrl = dvrow("Url")
'End If
intLevel = dvrow("NodeId")
Nds.Add(tmpNode)
initTree(tmpNode.Nodes, IntId, intLevel + 1)
Next
End Sub
End Class