ASP.NET TreeView读取数据库实例

发布时间:2022-04-16 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了ASP.NET TreeView读取数据库实例脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

前台:

复制代码 代码如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" InherITs="TreeView._Default" %>

<!DOCTYPE htML PubLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html XMlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
&nbsp;   <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:TreeView ID="TreeView1" runat="server" ShowLines="True">
        </asp:TreeView>
    </div>
    </form>
</body>
</html>


后台:

复制代码 代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SQLClient;
using System.configuration;

namespace TreeView
{
    public partial class _Default : System.Web.UI.Page
    {
        public static string st = ConfigurationManager.ConnectionStrings["sql"].ToString();
        PRivate DataTable dts=new DataTable();
        protected void Page_Load(object sender, Eventargs e)
        {
            if (!IsPostBack)
            {
                dts = CreateTable();
                CreateNode();
            }
        }
        public void CreateNode()
        {
            DataRow[] dr = dts.Select("ParentID=0");
            if(dr.Length>0)
            {
                foreach(DataRow drr in dr)
                {
                    TreeNode tn = new TreeNode();
                    tn.Value = drr["MenuID"].ToString();
                    tn.Text = drr["MenuName"].ToString();
                    tn.Expanded = false;
                    tn.SelectAction = TreeNodeSelectAction.Expand;
                    TreeView1.Nodes.Add(tn);
                    CreateChild(tn,dts);
                }
            }
            else
            {
                TreeNode t=new TreeNode();
                t.Value="空";
                t.Text="空";
                t.Expanded=false;
                t.SelectAction=TreeNodeSelectAction.Expand;
                TreeView1.Nodes.Add(t);
            }
        }
        public void CreateChild(TreeNode tnn, DataTable dtt)
        {
            DataRow[] dr = dtt.Select("ParentID=" + tnn.Value);
            if (dr.Length > 0)
            {
                foreach (DataRow drw in dr)
                {
                    TreeNode ts = new TreeNode();
                    ts.Value = drw["MenuID"].ToString();
                    ts.Text = drw["MenuName"].ToString();
                    ts.SelectAction = TreeNodeSelectAction.Expand;
                    ts.Expanded = false;
                    tnn.ChildNodes.Add(ts);
                    CreateChild(ts, dtt);
                }
            }
        }
        public DataTable CreateTable()
        {
            DataTable d = new DataTable();
            using(SqlConnection sql=new SqlConnection(st))
            {

                SqlCommand sq=new SqlCommand("select * From TreeViewName",sql);
                SqlDataAdapter sda=new SqlDataAdapter();
                sda.SelectCommand = sq;
                sda.Fill(d);

            }
            return d;
        }
    }
}

脚本宝典总结

以上是脚本宝典为你收集整理的ASP.NET TreeView读取数据库实例全部内容,希望文章能够帮你解决ASP.NET TreeView读取数据库实例所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。