实现效果: 

后台代码:

 

后台代码
1 using System;
2  using System.Collections.Generic;
3  using System.Data;
4 using System.Data.SqlClient;
5 using System.Linq;
6 using System.Web;
7 using System.Web.UI;
8 using System.Web.UI.WebControls;
9
10 public partial class _Default : System.Web.UI.Page
11 {
12 SqlConnection con = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString);
13 SqlDataAdapter adapter;
14 DataSet ds=new DataSet();
15
16 protected void Page_Load(object sender, EventArgs e)
17 {
18 ShowTree(); //显示树型结构
19 }
20
21 //显示树型菜单
22 public void ShowTree()
23 {
24
25 ShowTreeRoot(); //添加根节点
26 ShowTreeNode(TreeView1.Nodes[0].Value, TreeView1.Nodes[0]); //添加枝节点
27 }
28
29 //显示根节点
30 public void ShowTreeRoot()
31 {
32 string sql = "select * from KS_ORG where KS_Code=(select min(KS_Code) from KS_ORG)";
33 SqlCommand cmd = new SqlCommand(sql,con);
34 SqlDataReader reader;
35 try
36 {
37 if (con.State == ConnectionState.Closed)
38 {
39 con.Open();
40 }
41 reader = cmd.ExecuteReader();
42 if (reader.Read())
43 {
44 TreeNode node = new TreeNode();
45 node.Text = reader["KS_Name"].ToString();
46 node.NavigateUrl = reader["KS_Code"].ToString();
47 node.Value = reader["KS_Code"].ToString();
48 TreeView1.Nodes.Add(node);
49 }
50 }
51 catch
52 { }
53 finally {
54 if (con.State == ConnectionState.Open)
55 {
56 con.Close();
57 }
58 }
59 }
60
61 //显示根下节点
62 public void ShowTreeNode(string pNodeVal,TreeNode pNode)
63 {
64 string sql = string.Format("select * from KS_ORG where substring(KS_Code,1,{0})='{1}' and len(KS_Code)='{2}'", pNodeVal.Length,pNodeVal, pNodeVal.Length + 2);
65 DataView view = ReturnSet(sql).Tables[0].DefaultView;
66 for (int i = 0; i < view.Count; i++) //循环遍历输出
67 {
68 TreeNode node = new TreeNode();
69 node.Text = view.Table.Rows[i][1].ToString();
70 node.Value = view.Table.Rows[i][0].ToString();
71 node.NavigateUrl = view.Table.Rows[i][0].ToString();
72 ShowTreeNode(node.Value,node); //迭代调用
73 pNode.ChildNodes.Add(node);
74 }
75 }
76
77 /// <summary>
78 /// 返回数据集
79 /// </summary>
80 /// <param name="sql"></param>
81 /// <returns>DataSet</returns>
82 public DataSet ReturnSet(string sql)
83 {
84 DataSet set = new DataSet();
85 adapter = new SqlDataAdapter(sql,con);
86 adapter.Fill(set);
87 return set;
88 }
89 }
90

 

 

 

posted on 2010-06-05 12:14  xms  阅读(260)  评论(0)    收藏  举报