建立表及插入模擬數據:html
<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; |
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; |
} |
} |