WinForm递归绑定TreeView

WinForm递归绑定TreeView

绑定方法

/// <summary> /// 所有地区泛型对象 /// </summary> IList<AreaTInfo> areaList = new List<AreaTInfo>(); private void BindArea(string cityNo,TreeNodeCollection nodes, int level) { List<AreaTInfo> list = new List<AreaTInfo>(); foreach (AreaTInfo ai in areaList) { if (ai.F_AreaSN==cityNo) { list.Add(ai); } } level = level + 1; foreach (AreaTInfo item in list) { TreeNode tnc = new TreeNode(); tnc.Text = item.AreaName; tnc.Tag = item.AreaSN; BindArea(item.AreaSN,tnc.Nodes, level); nodes.Add(tnc); } }

调用方法:

areaList = _proxy.GetAreaInfo().ToList<AreaTInfo>() ;

BindArea("410000",this.treeView1.Nodes, 0);

treeView1.ExpandAll(); /*这句是展开所有节点*/