default.aspx
<asp:TreeView ID="TreeView1" runat="server" CollapseImageUrl="~/bbs/Images/topfolder.gif" EnableTheming="True" ExpandImageUrl="~/bbs/Images/newlockfolder.gif" LineImagesFolder="~/TreeLineImages" ShowLines="True">
</asp:TreeView>
default.aspx.cs
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
public partial class test_Default : System.Web.UI.Page
{
protected SqlConnection conn;
protected SqlDataAdapter sqlDataAdapter1,sqlDataAdapter2;
protected DataSet dataSet1,dataSet2;
protected DataView dataView1,dataView2;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
getData();
TreeView1.CollapseAll();
TreeView1.ShowLines = false;
}
}
private void getData()
{
conn = new SqlConnection(ConfigurationSettings.AppSettings["SQLConnString"]);
conn.Open();
dataSet1 = new DataSet();
sqlDataAdapter1=new SqlDataAdapter("SELECT * FROM daohangtiao_1",conn);
sqlDataAdapter1.Fill(dataSet1, "daohangtiao_1");
dataView1=dataSet1.Tables["daohangtiao_1"].DefaultView;
//dataView1.RowFilter="fatherid=100";
TreeNodeCollection nodes=this.TreeView1.Nodes;
foreach (DataRowView dataRow in dataView1)
{
TreeNode root = new TreeNode();
root.Value = dataRow["dh1_id"].ToString();
//root.ID=dataRow["dh1_id"].ToString();
root.Text = dataRow["dh1_caption"].ToString();
nodes.Add(root);
root.NavigateUrl = "";
InitChildNode(root.ChildNodes, root.Value);
}
dataSet1.Clear();
conn.Close();
}
private void InitChildNode(TreeNodeCollection nodes,string parentid)
{
dataSet2 = new DataSet();
sqlDataAdapter2 = new SqlDataAdapter("SELECT dh2_id AS Expr1, dh2_caption AS Expr2, dh2_link AS Expr3, dh2_sy FROM daohangtiao_2", conn);
sqlDataAdapter2.Fill(dataSet2, "daohangtiao_2");
dataView2=dataSet2.Tables["daohangtiao_2"].DefaultView;
dataView2.RowFilter="dh2_sy="+parentid+"";
//DataView dataView3=new DataView();
foreach(DataRowView dataRow in dataView2)
{
//if(dataRow["childrenid"]==null)
//break;
TreeNode node=new TreeNode();
node.Value=dataRow["Expr1"].ToString();
node.Text=dataRow["Expr2"].ToString();
nodes.Add(node);
//InitChildNode(node.ChildNodes,node.Value);
}
//dataView3=dataView2;
}
}
实例下载地址
https://files.cnblogs.com/yzxchoice/treeview.rar