首先表結構如下 表名 Test

  寫個存儲過 " /> 日韩中文一区二区三区,一本久道综合久久精品,在线看片成人

色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

ASP.NET 2005 Treeview終極解決方案

  這幾天在寫HRM的時候 這問題搞了我兩天,開始在使用Google 找了半天都是一堆垃圾,都是使用算法的較多, 后來就去了的msdn.yesky.com 找到點啟示。 好了廢話多說無用。

  首先表結構如下 表名 Test

按此在新窗口瀏覽圖片
  寫個存儲過程 GetTreeview

  這個不用我說了吧下面用到

  為了速度緩存DataTable

Public Function GetTreeTable() As DataTable
 Dim dt As New DataTable()
 dt = HttpContext.Current.Cache("Treeview")
 If dt Is Nothing Then
  Dim Conn As New SqlConnection
  Dim clsConnDatabase As New ConnectionDatabase
  Conn = clsConnDatabase.ConnDatabase
  Dim Command As New SqlCommand
  Command.Connection = Conn
  Command.CommandText = "GetTreeview"
  Command.CommandType = CommandType.StoredProcedure
  Command.ExecuteNonQuery()

  Dim da As New SqlDataAdapter(Command)

  dt = New DataTable()
  da.Fill(dt)
  HttpContext.Current.Cache.Insert("Treeview", dt)
 End If
 Return dt
End Function

  這里是主要阿

Public Sub PopulateNodes(ByVal nodes As TreeNodeCollection, Optional ByVal intParentID As Int32 = 0)

 Dim dt As New DataTable()
 dt = clsWebForms.GetTreeTable()
 Dim strExpression As String
 strExpression = "[parentID] = " & intParentID
 Dim foundRows() As DataRow
 foundRows = dt.Select(strExpression)
 
 Dim I As Integer
 For I = 0 To foundRows.GetUpperBound(0)
  Dim tn As New TreeNode()
  tn.Text = foundRows(I).Item(“TableName”).ToString()
  tn.Value = foundRows(I).Item("ID").ToString()
  Dim dr() As DataRow
  dr = dt.Select("[parentID] = " & tn.Value)
  If dr.GetUpperBound(0) > -1 Then
   tn.PopulateOnDemand = True
  End If
  nodes.Add(tn)
 Next
End Sub

  建立WebForm 放入Treeview

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
     
 If Not Page.IsPostBack Then
  PopulateNodes(TreeView1.Nodes, 0)
 End If
End Sub

Protected Sub TreeView1_TreeNodePopulate(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.TreeNodeEventArgs) Handles TreeView1.TreeNodePopulate

 PopulateNodes(e.Node.ChildNodes, e.Node.Value)
End Sub
  至于速度我沒測試,如果大家有興趣幫忙測測。

AspNet技術ASP.NET 2005 Treeview終極解決方案,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 庆元县| 清涧县| 鸡东县| 海城市| 武陟县| 建水县| 隆林| 临泉县| 增城市| 乐山市| 景宁| 曲靖市| 丹巴县| 仙游县| 高平市| 松潘县| 沽源县| 安化县| 桃源县| 兴山县| 文登市| 康平县| 苏尼特左旗| 荣昌县| 永定县| 长春市| 邢台市| 会东县| 衢州市| 合阳县| 永修县| 台东县| 县级市| 浦城县| 广河县| 牙克石市| 新蔡县| 册亨县| 雅江县| 兰州市| 乌苏市|