国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > .NET > 正文

ASP.NET 2005 Treeview終極解決方案

2024-07-10 12:40:46
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
這幾天在寫(xiě)HRM的時(shí)候 這問(wèn)題搞了我兩天,開(kāi)始在使用Google 找了半天都是一堆垃圾,都是使用算法的較多, 后來(lái)就去了的msdn.yesky.com 找到點(diǎn)啟示。 好了廢話多說(shuō)無(wú)用。

  首先表結(jié)構(gòu)如下 表名 Test

按此在新窗口瀏覽圖片
  寫(xiě)個(gè)存儲(chǔ)過(guò)程 GetTreeview

  這個(gè)不用我說(shuō)了吧下面用到

  為了速度緩存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
  至于速度我沒(méi)測(cè)試,如果大家有興趣幫忙測(cè)測(cè)。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 两当县| 新泰市| 正蓝旗| 黄平县| 荃湾区| 乐业县| 陕西省| 分宜县| 黔西县| 阿尔山市| 禄丰县| 富川| 邯郸市| 陈巴尔虎旗| 大埔县| 奇台县| 电白县| 禹城市| 闻喜县| 资中县| 汕尾市| 东方市| 唐海县| 常熟市| 和政县| 清水河县| 芦溪县| 都昌县| 高唐县| 宁海县| 都匀市| 台中县| 临潭县| 华坪县| 县级市| 无锡市| 寿宁县| 章丘市| 资兴市| 资兴市| 丰都县|