读书人

怎么把SQL数据库里的值绑定到TreeView

发布时间: 2011-12-19 23:23:36 作者: rapoo

怎样把SQL数据库里的值绑定到TreeView的子节点和根节点?
怎样把SQL数据库里的值绑定到TreeView的子节点和根节点?
我的类有一级,二级,要分别绑定到他们的一级节点,二级节点上??
吼起来`~

[解决办法]
给你个递归参考.其中的gvTreeView你可以用TreeView来替代.

C# code
        private void Form1_Load(object sender, EventArgs e)        {            SqlConnection sql = new SqlConnection(@"Data Source=LIUFENG\SQLEXPRESS;Initial Catalog=liufeng;Integrated Security=True");            SqlCommand cmd = new SqlCommand("Select * from TreeTable", sql);            DataSet dss = new DataSet();            SqlDataAdapter da = new SqlDataAdapter(cmd);            da.Fill(dss);            DataTable dt = dss.Tables[0];            BindTree(gvTreeView, dt);        }        protected void BindTree(gvTreeView gvTreeView , DataTable dt)        {            gvTreeView.Nodes.Clear();//清空树节点            DataRow []row = dt.Select("ParentID is null");            if (row.Length <= 0)            {                return;//找不到根结点则返回            }            gvTreeNode root = new gvTreeNode();            root.Text = row[0]["name"].ToString();            root.Tag = row[0]["ID"].ToString();                        gvTreeView.Nodes.Add(root);                       CreateChildNode(root, dt);            root.Expand();        }        protected void CreateChildNode(gvTreeNode gvTreeNode, DataTable dt)        {            DataRow[] rows = dt.Select("ParentID ='" + gvTreeNode.Tag + "'");            foreach(DataRow row in rows)            {                gvTreeNode Node = new gvTreeNode();                Node.Text = row["name"].ToString();                Node.Tag = row["ID"].ToString();                gvTreeNode.Nodes.Add(Node);                CreateChildNode(Node, dt);            }        }
[解决办法]
treeView1.ExpandAll()
就可以展开啊。

读书人网 >C#

热点推荐