日期:2014-05-19  浏览次数:20905 次

我想问一下,递归的问题
我有个类别表,我想用gridview实现递归菜单,请问可以吗?可以的话要怎么实现呢?

------解决方案--------------------
来 看到你的回复了
给你代码 看看
private void InitMyTreeView(TreeNodeCollection Nds, string PID, ref DataTable dt)
{
DataView dv = new DataView();
TreeNode tmpNd;
string strId;
dv.Table = dt;
dv.RowFilter = "mainId = ' " + PID + " ' ";
dv.Sort = "ID ";

foreach (DataRowView drv in dv)
{
tmpNd = new TreeNode();

tmpNd.Text = drv[ "Title "].ToString();
tmpNd.Value = drv[ "ID "].ToString().Trim();
tmpNd.ToolTip = drv[ "Title "].ToString().Trim();
tmpNd.ImageToolTip = drv[ "Title "].ToString().Trim();
tmpNd.Target = "你目标框架的名称 ";
Nds.Add(tmpNd);

strId = drv[ "ID "].ToString();
InitMyTreeView(tmpNd.ChildNodes, strId, ref dt);
}
}

调用时用:初始化 DataTable Dt=(你需要查询的那个整表);

然后调用:InitMyTreeView(this.TreeView1.Nodes, "0 ",ref Dt);
就可以了 上面代码只需要把汉字部分用自己的数据结构和字符串替换掉就可以了,测试通过的 呵呵