1. 程式人生 > >c# 遞迴載入省市和地市

c# 遞迴載入省市和地市

private void button1_Click(object sender, EventArgs e)
        {
            int pid = 0;
            //讀取TblArea中的資料
            LoadAreaInfo(pid, treeView1.Nodes);
        }

        //載入資料
        private void LoadAreaInfo(int pid, TreeNodeCollection treeNodeCollection)
        {
            //1.先執行查詢,查詢所有的AreaPid等於pid的
            string sql = "select areaid,areaname from dbo.TblArea where 
[email protected]
"; DataTable dt= SqlHelper.ExecuteDataTable(sql, CommandType.Text, new SqlParameter("@pid", pid)); foreach (DataRow itemDr in dt.Rows) { //讀取資料庫中的第二列即[1],繫結到節點上去。 TreeNode tnode= treeNodeCollection.Add(itemDr[1].ToString()); //同時保留該節點的第一列[0]的數字編號,便於接下來繫結子節點使用。 tnode.Tag = itemDr[0]; //使用遞迴呼叫自己,將主節點的數字編號座位引數1,將資料繫結到相應的主節點tnode上去。 LoadAreaInfo((int)itemDr[0],tnode.Nodes); } }