技术开发 频道

TreeView(递归)


【IT168技术文档】

<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(); } Dal#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 }
0
相关文章