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 _Default : System.Web.UI.Page { private readonly string ConnString = @"server=.;database=userInfo;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"); treeMenu.ShowLines = true; treeMenu.CollapseAll(); } } 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; } }