WinForm--(treeview 绑定)
根据用户权限获得DataTable,利用递归绑定TreeView
//用重载实现递归,返回符合要求的所有Treeview菜单项 private void MyTreeView(DataTable table, string ParentID, System.Windows.Forms.TreeNode PNode) { DataRow[] dr = table.Select("PID=" + ParentID); try { if (dr.Length > 0) { foreach (DataRow d in dr) { System.Windows.Forms.TreeNode TNode = new System.Windows.Forms.TreeNode(); //创建TNode对像 TNode.Text = d["PowName"].ToString(); //显示子点文本 TNode.Name = d["ID"].ToString();//存储节点的父ID if (PNode == null) { this.treeView1.Nodes.Add(TNode); //添加父子点 } else { PNode.Nodes.Add(TNode); //添加子节点 } MyTreeView(table, d["ID"].ToString(), TNode); //调用MyTreeView } } else { return; } } catch (Exception exp) { MessageBox.Show(exp.Message); //提示错误信息 } }