是不是TREEVIEW连接数据库动态生成节点,就一定要通过XML??如果不是又怎么实现呢??
我用XML的方法试了一下,但是总是出错.,(初学,是对着书改的),说什么Data at the root level is invalid. Line 1, position 1.

我的数据库表Student_Table 
xno int 4 primary key
xname char 10
collage varchar 20
...

tree.aspx:
    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        TreeView1.TreeNodeSrc = "xmlzhuan.xml"
        TreeView1.SelectExpands = True
        TreeView1.DataBind()
    End Sub
...............................................................
xmlzhuan.xml:
    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim con As SqlConnection
        Dim cmd As SqlCommand
        Dim ds As DataSet
        Dim strQuery As String
        con = New SqlConnection("server=(local);uid=sa;pwd=;database=lab")
        strQuery = "select xname as text,'treelab.aspx?xno='+ltrim(str(xno))" & "as treenodesrc from Student_Table as TREENODE for xml auto,xmldata"
        cmd = New SqlCommand(strQuery, con)
        con.Open()
        ds = New DataSet
        ds.ReadXml(cmd.ExecuteXmlReader, XmlReadMode.Fragment)
        ds.DataSetName = "TREENODES"
        ds.WriteXml(Response.OutputStream)
        con.Close()    End Sub
........................................................................
treelab.aspx:
    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim con As SqlConnection
        Dim cmd As SqlCommand
        Dim ds As DataSet
        Dim str As String
        con = New SqlConnection("server=(local);uid=sa;pwd=;database=lab")
        str = "select xname as text from Student_Table as TREENODE" & "where xno=@xno for xml auto,XMLDATA"
        cmd = New SqlCommand(str, con)
        cmd.Parameters.Add(New SqlParameter("@xno", Request.QueryString("xno")))
        con.Open()
        ds = New DataSet
        ds.ReadXml(cmd.ExecuteXmlReader, XmlReadMode.Fragment)
        ds.DataSetName = "TREENODES"
        ds.WriteXml(Response.OutputStream)
        con.Close()
    End Sub找了很久都找不到问题出在哪,,郁闷啊,,