TblAreaBLL bll = new TblAreaBLL(); private void button1_Click(object sender, EventArgs e) { LoadDataToTree(this.treeView1.Nodes, bll.GetTblAreaListByID(0)); } private void LoadDataToTree(TreeNodeCollection treeNode, List<TblArea> list) { foreach (TblArea arr in list) { TreeNode tree = treeNode.Add(arr.AreaName); tree.Tag = arr.AreaId; LoadDataToTree(tree.Nodes, bll.GetTblAreaListByID(arr.AreaId)); //遞歸循環 } } private void button2_Click(object sender, EventArgs e) { List<TblArea> list = bll.GetTblAreaList(); //獲取所有的城市升級列表 LoadDataToTree2(this.treeView1.Nodes, list, 0); //先加載所有省級列表 } private void LoadDataToTree2(TreeNodeCollection treeNode, List<TblArea> list, int pid) { foreach (TblArea arr in list) { if (arr.AreaPId == pid) { TreeNode tree = treeNode.Add(arr.AreaName); tree.Tag = arr.AreaId; LoadDataToTree2(tree.Nodes, list, arr.AreaId); //遞歸循環 直接在集合中查詢。 } } } //刪除節點下的所有數據 private void button3_Click(object sender, EventArgs e) { TreeNode node = this.treeView1.SelectedNode; if (node != null) { int areaId = (int)node.Tag; bll.DeleteTblAreaDiGui(areaId); this.treeView1.SelectedNode.Remove(); MessageBox.Show("刪除成功!"); } }
