我的页面内容如下:浏览没有报错
<%@ Page Language="VB" MasterPageFile="~/MasterPage.master" AutoEventWireup="false" CodeFile="Default2.aspx.vb" Inherits="Default2" title="Untitled Page" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.Sqlclient" %>
<Script Language="vb" Runat="Server">
  Sub Page_Load(Sender As Object,E As EventArgs)
        Dim Cnn As sqlconnection
        Dim Cmd As sqlcommand
        Dim DataR As sqldataReader
      Dim strConn As String
      Dim Sql As String
      Dim i, ParentNode, NodeId As Integer
      
      If Not IsPostBack Then
            strConn = "server=localhost;uid=sa;pwd=;database=myweb"
            Cnn = New sqlconnection(strConn)
         Cnn.Open()
            Sql = "select * from knowledge_class order by id"
            Cmd = New sqlcommand(Sql, Cnn)
         DataR = Cmd.ExecuteReader
         Dim menuNodes(100) As TreeNode
         For i = 0 To menuNodes.Length - 1
            menuNodes(i) = New TreeNode
         Next
         Do While DataR.Read
            ParentNode = DataR("upid")
            NodeId = DataR("id")
            menuNodes(NodeId).Text = DataR("classname")
            menuNodes(NodeId).NavigateUrl = "main.aspx?ClassID=" & NodeId
            If ParentNode <> 0 Then
               menuNodes(ParentNode).ChildNodes.Add(menuNodes(NodeId))
            Else
               TreeView1.Nodes.Add(menuNodes(NodeId))
            End If
         Loop
        End If
   End Sub
</Script>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<table width="780" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="205" height="462" background="images/0_14.gif">*知识库*<br />
<asp:TreeView  ID="TreeView1" runat="server" Font-Size="X-Small" BorderStyle="None" ForeColor="Black" NodeWrap="True" ShowLines="True" ExpandDepth="1">
    </asp:TreeView> </td>
    <td>&nbsp;</td>
  </tr>
</table></asp:Content>

解决方案 »

  1.   

    肯定是你的绑定有问题.先声明一个数组的办法不是很好.如果是无限分级,用递归<asp:TreeView   SelectedNodeStyle-CssClass="color:red;font-size:12px" ID="TreeView1" runat="server" AutoGenerateDataBindings="False" BorderStyle="None"
                            EnableTheming="False" EnableViewState="true"
                            
                             ShowLines="True"
                             
                              OnSelectedNodeChanged="TreeView1_SelectedNodeChanged">
                            <SelectedNodeStyle BackColor="Red" BorderStyle="Dotted" CssClass="color:red;font-size:12px" />
                        </asp:TreeView>
        private void _BindTree()
            {
                if (this.TreeView1.Nodes.Count > 0)
                    this.TreeView1.Nodes.Clear();            DataTable TreeView1 = DataClass.ExecuteDataTable("select * from t_Dept");
                DataRow[] rows = TreeView1.Select("ParentID = 0");
                for (int i = 0; i < rows.Length; i++)
                {
                    TreeNode node = new TreeNode();
                    node.Text = rows[i]["deptName"].ToString();
                    //node.ImageUrl ="../images/house.ico";
                    node.Value = rows[i]["Id"].ToString();
                    // node.Value = "9999";
                    this.TreeView1.Nodes.Add(node);
                    this.AddChildNodes(ref TreeView1, ref node);            }            this.TreeView1.DataBind();        }        private void AddChildNodes(ref DataTable TreeView1, ref TreeNode node)
            {
                DataRow[] rows = TreeView1.Select("ParentID=" + node.Value);
                for (int i = 0; i < rows.Length; i++)
                {
                    TreeNode NewNode = new TreeNode();
                    NewNode.Text = rows[i]["deptName"].ToString();
                    //NewNode.ImageUrl ="../images/house.ico";
                    NewNode.SelectAction = TreeNodeSelectAction.Select;
                    NewNode.Value = rows[i]["ID"].ToString();
                    //NewNode.Value = "888888";
                    this.AddChildNodes(ref TreeView1, ref NewNode);
                    node.ChildNodes.Add(NewNode);            }
            }-----难免有错,错了莫怪.