ASP.NET 2005 Treeview终极解决方案
作者 佚名技术
来源 NET编程
浏览
发布时间 2012-05-22
这几天在写HRM的时候 这问题搞了我两天,开始在使用Google 找了半天都是一堆垃圾,都是使用算法的较多, 后来就去了的msdn.yesky.com 找到点启示。 好了废话多说无用。 首先表结构如下 表名 Test 写个存储过程 GetTreeview 这个不用我说了吧下面用到 为了速度缓存DataTable Public Function GetTreeTable() As DataTableDim 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 至于速度我没测试,如果大家有兴趣帮忙测测。 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于ASP.NET 2005 Treeview终极解决方案的所有评论