zoukankan      html  css  js  c++  java
  • TreeView(递归)(转)


     

    代码:

    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        
    <title>无标题页</title>
    </head>
    <body>
        
    <form id="form1" runat="server">
            
    <div style="text-align:center;">
                
    <div style="margin:5px; float:left;"><asp:TreeView runat="server" ID="Tree1"></asp:TreeView></div>
                
    <div style="margin-left:12px;"><asp:GridView runat="server" ID="GridView1"></asp:GridView></div>
            
    </div> 
        
    </form>
    </body>
    </html>

    public partial class InfoSort : System.Web.UI.Page
        
    {
            DataSet ds 
    = null;
            
    protected void Page_Load(object sender, EventArgs e)
            
    {
                
    if (!IsPostBack)
                
    {
                    BindData();
                    loadtree();
                }

            }

            
    private void loadtree()
            
    {
                Tree1.Nodes.Clear();
                ds 
    = GetDataSet("SELECT * FROM sort");
                InitTree(Tree1.Nodes, 
    0);
            }

            
    private void InitTree(TreeNodeCollection Nds,int parentid)
            
    {
                DataView dv 
    = new DataView();
                TreeNode tmpNd 
    = null;
                dv.Table 
    = ds.Tables[0];
                dv.RowFilter 
    = String.Format("parentid={0}", parentid);
                
    foreach (DataRowView drv in dv)
                
    {
                    tmpNd 
    = new TreeNode();
                    tmpNd.Text 
    = (string)drv["sortname"];//节点名称
                    tmpNd.NavigateUrl = String.Format("?id={0}", drv["id"]);//节点URL
                    
    //tmpNd.ImageUrl = ""; //节点图片
                    if (parentid == 0)
                        tmpNd.Expanded 
    = true;
                    
    else
                        tmpNd.Expanded 
    = false;
                    Nds.Add(tmpNd);
                    InitTree(Nds[Nds.Count 
    - 1].ChildNodes, (int)drv["id"]);
                }

            }

            
    private void BindData()
            
    {
                GridView1.DataSource 
    = GetDataSet("select * from sort");
                GridView1.DataBind();
            }


            
    #region Dal
            
    private OleDbConnection GetConn
            
    {
                
    get
                
    {
                    
    string path = Server.MapPath("App_Data/Database2.mdb");
                    
    string _connStr = String.Format("Provider=Microsoft.Jet.OLEDB.4.0; Data Source={0}", path);
                    
    return new OleDbConnection(_connStr);
                }

            }

            
    private DataSet GetDataSet(string sql)
            
    {
                OleDbConnection _conn 
    = null;
                OleDbDataAdapter odda 
    = null;
                DataSet ds 
    = null;
                
    try
                
    {
                    ds 
    = new DataSet();
                    _conn 
    = GetConn;
                    _conn.Open();
                    odda 
    = new OleDbDataAdapter(sql, GetConn);
                    odda.Fill(ds);
                }

                
    catch (Exception ex)
                
    {
                    
    throw new Exception(ex.Message);
                }

                
    finally
                
    {
                    
    if (odda != null)
                        odda.Dispose();
                    
    if (_conn != null)
                    
    {
                        _conn.Close();
                        _conn.Dispose();
                    }

                }

                
    return ds;
            }

            
    #endregion

        }
     

     

  • 相关阅读:
    01-文件系统
    适配器模式,新老系统兼容
    01-Entity FrameWork如何控制数据的变化
    .Net实战之反射操作篇
    .Net实战之反射相关类之间的人体经络关系
    .Net实战之反射外卖计费
    [转]UINavigationController 返回的方法汇总
    [转]AFNetWorking使用笔记
    vue----子组件引用vux popup mask遮罩在最上层解决办法 z-index问题
    vue系列---vue项目(已安装vuex)中引入jquery
  • 原文地址:https://www.cnblogs.com/quietwalk/p/2276507.html
Copyright © 2011-2022 走看看