zoukankan      html  css  js  c++  java
  • ASP.NET 递归将分类绑定到 TreeView

    CREATE TABLE [dbo].[sysMenuTree](
    [NoteId] [decimal](18, 0) NOT NULL,
    [ParentId] [decimal](18, 0) NULL,
    [sText] [nvarchar](50) NULL,
    [sValue] [nvarchar](50) NULL,
    [sURL] [nvarchar](50) NULL,
    [sTarget] [nvarchar](50) NULL,
    [Chger] [nvarchar](50) NULL,
    [ChgTime] [nvarchar](50) NULL,
    CONSTRAINT [PK_sysMenuTree] PRIMARY KEY CLUSTERED
    (
    [NoteId] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY]

    insert into sysMenuTree values(3,0,N'目錄',N'目錄','','','','')
    insert into sysMenuTree values(4,0,N'目錄',N'目錄','','','','')
    insert into sysMenuTree values(5,0,N'目錄',N'目錄','','','','')
    insert into sysMenuTree values(6,3,N'項目.1',N'項目.1','','','','')
    insert into sysMenuTree values(7,3,N'項目.2',N'項目.2','','','','')
    insert into sysMenuTree values(8,4,N'項目.1',N'項目.1','','','','')
    insert into sysMenuTree values(9,4,N'項目.2',N'項目.2','','','','')
    insert into sysMenuTree values(10,4,N'項目.3',N'項目.3','','','','')
    insert into sysMenuTree values(11,5,N'項目.1',N'項目.1','','','','')
    insert into sysMenuTree values(12,5,N'項目.2',N'項目.2','','','','')

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_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">
    <title></title>
    </head>
    <body>
    <form id="form1" runat="server">
    <div>
    <asp:TreeView ID="treeMenu" runat="server">
    </asp:TreeView>
    </div>
    </form>
    </body>
    </html>

    using System.Web.UI.WebControls;
    using System.Data;
    using System.Data.SqlClient;

    public partial class _Default : System.Web.UI.Page
    {
    private readonly string ConnString = @"server=.MSSQLSERVER2008;database=chart;uid=sa;pwd=123456";
    private DataTable dt = null;
    protected void Page_Load(object sender, EventArgs e)
    {
    if(!IsPostBack)
    {
    dt = new DataTable();
    GetMenuToDataTable("select * from sysMenuTree",dt);
    BindTree(dt,null,"0");
    }
    }

    private void BindTree(DataTable dtSource,TreeNode parentNode,string parentID)
    {
    DataRow[] rows = dtSource.Select(string.Format("ParentID={0}",parentID));
    foreach(DataRow row in rows)
    {
    TreeNode node = new TreeNode();
    node.Text = row["sText"].ToString();
    node.Value = row["sValue"].ToString();
    BindTree(dtSource,node,row["NoteId"].ToString());
    if(parentNode == null)
    {
    treeMenu.Nodes.Add(node);
    }
    else
    {
    parentNode.ChildNodes.Add(node);
    }
    }
    }

    private DataTable GetMenuToDataTable(string query,DataTable dt)
    {
    using(SqlConnection conn = new SqlConnection(ConnString))
    {
    SqlCommand cmd = new SqlCommand(query,conn);
    SqlDataAdapter ada = new SqlDataAdapter(cmd);
    ada.Fill(dt);
    }
    return dt;
    }
    }

  • 相关阅读:
    pom.xml基础配置
    Maven零散笔记——配置Nexus
    搭建局域网maven仓库
    java 加密解密
    菠萝大象--sping
    (转)Spring对注解(Annotation)处理源码分析1——扫描和读取Bean定义
    eclipse 如何把java项目转成web项目
    Effective Java
    More Effective C++
    Effective C++
  • 原文地址:https://www.cnblogs.com/yangpeng-jingjing/p/5825172.html
Copyright © 2011-2022 走看看