C#
在using 加
using System.Configuration;
using System.Data.SqlClient;
using Microsoft.Web.UI.WebControls;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
// 定义数据库连接
SqlConnection sqlConection_Tree =new SqlConnection(ConfigurationSettings.AppSettings["cnstr"]);
//初始化连接字符串
//打开连接
sqlConection_Tree.Open();
//获取树形目录节点
SqlDataAdapter sqlDataAdapter_Tree = new SqlDataAdapter("select Item_id,Item_name,Parent_ID from tree",sqlConection_Tree);
DataSet DataSet_Tree=new DataSet();
sqlDataAdapter_Tree.Fill(DataSet_Tree);
this.ViewState["DataSet_Tree"]=DataSet_Tree;
//调用递归函数,完成树形结构的生成
AddTree(0, (TreeNode)null);
}
public void AddTree(int ParentID,TreeNode pNode)
{
DataSet DataSet_Tree=(DataSet) this.ViewState["DataSet_Tree"];
DataView DataView_Tree = new DataView(DataSet_Tree.Tables[0]);
//过滤ParentID,得到当前的所有子节点 ParentID为父节点ID
DataView_Tree.RowFilter = "[Parent_ID] = " + ParentID;
//循环递归
foreach(DataRowView Row in DataView_Tree)
{
//声明节点
TreeNode Node=new TreeNode() ;
//绑定超级链接
Node.NavigateUrl = "List.aspx?Item_ID="+Row["Item_ID"].ToString();
//开始递归
If ParentID = 0 Then
{
//添加根节点
Node.Text = Row["item_name"].ToString();
TreeView_Tree.Nodes.Add(Node);
Node.Expanded=true; //节点状态展开
AddTree(Int32.Parse(Row["item_id"].ToString()), Node); //再次递归
}
else
{
//添加当前节点的子节点
Node.Text = Row["item_name"].ToString();
pNode.Nodes.Add(Node);
Node.Expanded = true; //节点状态展开
AddTree(Int32.Parse(Row["item_id"].ToString()),Node); //再次递归
}
}
//关闭连接
}
VB.NET
加
Imports System.Configuration
Imports System.Data.SqlClient
Imports Microsoft.Web.UI.WebControls
Dim sqlConection_Tree As SqlConnection
Dim sqlDataAdapter_Tree As SqlDataAdapter
Dim DataSet_Tree As New DataSet
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'在此处放置初始化页的用户代码
sqlConection_Tree = New SqlConnection(ConfigurationSettings.AppSettings("ConnectionString"))
sqlConection_Tree.Open()
sqlDataAdapter_Tree = New SqlDataAdapter("select Item_id,Item_name,Parent_ID from tree", sqlConection_Tree)
sqlDataAdapter_Tree.Fill(DataSet_Tree)
Me.ViewState("DataSet_Tree") = DataSet_Tree
'调用递归函数,完成树形结构的生成
Dim ppnode As New TreeNode
ppnode = Nothing
AddTree(0, ppnode)
End Sub
Public Sub AddTree(ByVal ParentID As Integer, ByVal pNode As TreeNode)
Dim DataView_Tree As DataView
DataSet_Tree = Me.ViewState("DataSet_Tree")
DataView_Tree = New DataView(DataSet_Tree.Tables(0))
DataView_Tree.RowFilter = "(Parent_ID)=" & ParentID
Dim Row As DataRowView
For Each Row In DataView_Tree
Dim node = New TreeNode
' TreeNode(node = New TreeNode)
node.NavigateUrl = "List.aspx?Item_ID=" + Row("Item_ID").ToString()
Dim aa As New TreeNode
If ParentID = 0 Then
'添加根节点
node.Text = Row("item_name").ToString
TreeView_Tree.Nodes.Add(node)
node.Expanded = True
AddTree(Int32.Parse(Row("item_id").ToString), node)
Else
node.Text = Row("item_name").ToString
pNode.Nodes.Add(node)
node.Expanded = True
AddTree(Int32.Parse(Row("item_id").ToString()), node)
End If
Next
End Sub
在using 加
using System.Configuration;
using System.Data.SqlClient;
using Microsoft.Web.UI.WebControls;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
// 定义数据库连接
SqlConnection sqlConection_Tree =new SqlConnection(ConfigurationSettings.AppSettings["cnstr"]);
//初始化连接字符串
//打开连接
sqlConection_Tree.Open();
//获取树形目录节点
SqlDataAdapter sqlDataAdapter_Tree = new SqlDataAdapter("select Item_id,Item_name,Parent_ID from tree",sqlConection_Tree);
DataSet DataSet_Tree=new DataSet();
sqlDataAdapter_Tree.Fill(DataSet_Tree);
this.ViewState["DataSet_Tree"]=DataSet_Tree;
//调用递归函数,完成树形结构的生成
AddTree(0, (TreeNode)null);
}
public void AddTree(int ParentID,TreeNode pNode)
{
DataSet DataSet_Tree=(DataSet) this.ViewState["DataSet_Tree"];
DataView DataView_Tree = new DataView(DataSet_Tree.Tables[0]);
//过滤ParentID,得到当前的所有子节点 ParentID为父节点ID
DataView_Tree.RowFilter = "[Parent_ID] = " + ParentID;
//循环递归
foreach(DataRowView Row in DataView_Tree)
{
//声明节点
TreeNode Node=new TreeNode() ;
//绑定超级链接
Node.NavigateUrl = "List.aspx?Item_ID="+Row["Item_ID"].ToString();
//开始递归
If ParentID = 0 Then
{
//添加根节点
Node.Text = Row["item_name"].ToString();
TreeView_Tree.Nodes.Add(Node);
Node.Expanded=true; //节点状态展开
AddTree(Int32.Parse(Row["item_id"].ToString()), Node); //再次递归
}
else
{
//添加当前节点的子节点
Node.Text = Row["item_name"].ToString();
pNode.Nodes.Add(Node);
Node.Expanded = true; //节点状态展开
AddTree(Int32.Parse(Row["item_id"].ToString()),Node); //再次递归
}
}
//关闭连接
}
VB.NET
加
Imports System.Configuration
Imports System.Data.SqlClient
Imports Microsoft.Web.UI.WebControls
Dim sqlConection_Tree As SqlConnection
Dim sqlDataAdapter_Tree As SqlDataAdapter
Dim DataSet_Tree As New DataSet
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'在此处放置初始化页的用户代码
sqlConection_Tree = New SqlConnection(ConfigurationSettings.AppSettings("ConnectionString"))
sqlConection_Tree.Open()
sqlDataAdapter_Tree = New SqlDataAdapter("select Item_id,Item_name,Parent_ID from tree", sqlConection_Tree)
sqlDataAdapter_Tree.Fill(DataSet_Tree)
Me.ViewState("DataSet_Tree") = DataSet_Tree
'调用递归函数,完成树形结构的生成
Dim ppnode As New TreeNode
ppnode = Nothing
AddTree(0, ppnode)
End Sub
Public Sub AddTree(ByVal ParentID As Integer, ByVal pNode As TreeNode)
Dim DataView_Tree As DataView
DataSet_Tree = Me.ViewState("DataSet_Tree")
DataView_Tree = New DataView(DataSet_Tree.Tables(0))
DataView_Tree.RowFilter = "(Parent_ID)=" & ParentID
Dim Row As DataRowView
For Each Row In DataView_Tree
Dim node = New TreeNode
' TreeNode(node = New TreeNode)
node.NavigateUrl = "List.aspx?Item_ID=" + Row("Item_ID").ToString()
Dim aa As New TreeNode
If ParentID = 0 Then
'添加根节点
node.Text = Row("item_name").ToString
TreeView_Tree.Nodes.Add(node)
node.Expanded = True
AddTree(Int32.Parse(Row("item_id").ToString), node)
Else
node.Text = Row("item_name").ToString
pNode.Nodes.Add(node)
node.Expanded = True
AddTree(Int32.Parse(Row("item_id").ToString()), node)
End If
Next
End Sub