递归的主要方法是函数内调用本身函数。从而一步一步往下走下去:
用treeview实现中国地区的递归展示:
实例化将数据库中数据返回为泛型集合-List<china> cl=new chinadata().selectall();
首先,函数为:
public vodi digui(string s,TreeNodeCollection t)
{
foreach(china x in cl){
if(x.parentareacode==s){
TreeNode tr =new TreeNode(x.areaname)
digui(x.areacode,tr.Nodes);
t.Add(tr);
)
}
}
}
调用时:
digui("0001",treeView1.Nodes);
-------------
点击某一项,提示他的父级:
string name = "";
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
name = "";
dg2(treeView1.SelectedNode);
MessageBox.Show(name.Substring(0,name.Length-1));
}
public void dg2(TreeNode t)
{
if (t.Parent != null)
{
dg2(t.Parent);
}
name = name + t.Text + "-";
}