关于静态添加TreeView子节点的问题?
小弟做一个系统权限的升级功能,木有有两级的树,是数据绑定循环出来的的,想再增加一层三级节点做权限,不知该如何静态的添加出来,求大神指教!代码和效果图如下:
[解决办法]
在你查询出menulist之后,添加行到 ds.table[0].Rows 里边一些行就行。
关键是,你先要拿出一张纸、一支笔,把你需要添加进去的数据写出来。如果写不出来,别写程序。
[解决办法]
先要获取特定数据,理顺逻辑关系如
List<Sys_Menu> lstm=Sys_MenuBLL.GetList(menu);
List<Sys_Menu> lstp=(from q in lstm where string.IsNullOrEmpty(q.ParentNo) select q).ToList();
foreach (Sys_Menu m in lstp)
{
TreeNode rootNode = new TreeNode();
rootNode.Text = m.MenuName;
rootNode.ToolTip = m.MenuNo;
...
this.tvMenu.Nodes.Add(rootNode);
BindTree(rootNode,lstm);
tvMenu.ExpandAll();
}
....
private void BindTree(TreeNode node, List<Sys_Menu> lstm)
{
int ic = 0;
List<Sys_Menu> lst=(from q in lstm where q.ParentNo.Equals(node.Value) select q).ToList();
foreach (Sys_Menu m in lst)
{
TreeNode nd = new TreeNode();
nd.Text = m.MenuName;
.....
node.ChildNodes.Add(nd);
BindTree(nd,lstm);
}
}