zoukankan      html  css  js  c++  java
  • 用C# + SqlServer2005 实现的treeview动态树形菜单

    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Data.SqlClient;

    public partial class TreeView : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }
        protected void btnTV_Click(object sender, EventArgs e)
        {
            CreateTreeView(TreeView1.Nodes, "0");
        }


        /**/
        /// <summary>
        /// 根据递归查询结果动态生成TreeView
        /// </summary>

        private DataSet CreateDataSet()
        {
            string connetion = "database=test;server=.;uid=sa;pwd=sa123456;";
            using (SqlConnection con = new SqlConnection(connetion))
            {
                SqlCommand com = new SqlCommand("select * from QuHua", con);
               
                SqlDataAdapter da = new SqlDataAdapter(com);
                DataSet ds = new  DataSet();
                da.Fill(ds,"tree");
               

                return ds;
            }

        }

        /// <summary>
        /// 递归查询
        /// </summary>
        /// <param name="nodes">TreeView的节点集合</param>
        /// <param name="parentid">所属父级的ID</param>
        private void CreateTreeView(TreeNodeCollection nodes, string parentid)
        {
            DataView TempDV = new DataView();
            TreeNode TempNode;
            //string intId;
            TempDV.Table = CreateDataSet().Tables["tree"];
            TempDV.RowFilter = "ParentID=" + parentid + "";
            foreach (DataRowView drv in TempDV)
            {
                TempNode = new TreeNode();
                TempNode.Value = drv["TreeID"].ToString();
                TempNode.Text = drv["TreeName"].ToString();
                TempNode.NavigateUrl = drv["NodeUrl"].ToString();
                nodes.Add(TempNode);

                //intId = drv["ParentID"].ToString();

                CreateTreeView(TempNode.ChildNodes, TempNode.Value);

            }

        }

    }

  • 相关阅读:
    git rebase 还是 merge的使用场景最通俗的解释
    漏洞复现:Struts2 远程代码执行漏洞(S2-033)
    linux临时网络配置
    漏洞复现:Struts2 S2-032 漏洞环境
    XXE攻击学习
    启用了不安全的HTTP方法【转】
    HTTP参数污染【转】
    逻辑漏洞挖掘方式
    大漏洞时代下的僵尸网络追踪-笔记
    markdown入门杂记
  • 原文地址:https://www.cnblogs.com/wills2010/p/1836459.html
Copyright © 2011-2022 走看看