TreeView连接数据库

来源:互联网 发布:知豆汽车能上高速吗 编辑:程序博客网 时间:2024/05/22 12:40

后台:

   protected void Page_Load(object sender, EventArgs e)

        {
            SqlConnection cnn = new SqlConnection("server=.;uid=sa;pwd=abc;database=");
            cnn.Open();
            if (!IsPostBack)
            {
                TreeNode node = new TreeNode();
                TreeView1.Nodes.Add(ShowAllTree(1, cnn, node));   //根节是以PID为0标志的 
                TreeView1.Nodes[0].Value = "根节点名";
                TreeView1.Nodes[0].NavigateUrl = "根节点连接";
                TreeView1.Nodes[0].Target = "根节点打开框架";
            }
            cnn.Close();
        }


        private TreeNode ShowAllTree(int id, SqlConnection cnn, TreeNode node)
        {


            string sqlSelect = "SELECT * FROM abcwhere Sid = ' " + id + " ' ";
            SqlDataAdapter da = new SqlDataAdapter(sqlSelect, cnn);
            DataTable dt = new DataTable();
            da.Fill(dt);
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                TreeNode newNode = new TreeNode(dt.Rows[i][0].ToString());


                //node.Nodes.Add(newNode);
                node.ChildNodes.Add(newNode);


                newNode.Text = dt.Rows[i][2].ToString();


                newNode.Target = "框架";


                int newID = (int)dt.Rows[i][0];


                ShowAllTree(newID, cnn, newNode);   //递归调用,将子结点ID当做下一当前结点ID 


                int biaoshi = (int)dt.Rows[i][1];
               
                if (biaoshi == 1)
                {
                    newNode.NavigateUrl = "e.aspx?id=" + dt.Rows[i][0].ToString();
                }
                if (biaoshi > 1)
                {
                    newNode.NavigateUrl = "e.aspx?id=" + dt.Rows[i][0].ToString();
                }
                if(biaoshi==0)
                {
                    newNode.NavigateUrl = "e.aspx";
                }
            }
            dt.Dispose();
            da.Dispose();

前台:

             <asp:TreeView ID="TreeView1" runat="server" ShowLines="True">
                 <SelectedNodeStyle BorderColor="#0066FF" />
             </asp:TreeView>


            return node;
        }
原创粉丝点击