前台代码
<asp:TreeView ID="tvDataPower" runat="server" ShowCheckBoxes="All">
  </asp:TreeView>后台代码
  public void InitleftG()
        {
            using (DownloadCenterEntities db = new DownloadCenterEntities())
            {                List<DataClass> llist = (from u in db.DataClass
                                         orderby u.DispOrder
                                         where u.ParentClassID == 0
                                         select u).ToList();                for (int i = 0; i < llist.Count; i++)
                {
                    DataClass lb = llist[i];
                    TreeNode roon = new TreeNode();
                    roon.Text = lb.ClassName;
                    roon.Value = lb.ClassID.ToString();
                    InitleftZ(roon);
                    this.tvDataPower.Nodes.Add(roon);                }
                this.tvDataPower.ExpandAll();
            }
        }        public void InitleftZ(TreeNode Pid)
        {
            using (DownloadCenterEntities db = new DownloadCenterEntities())
            {
                int fjdid = int.Parse(Pid.Value);
                List<DataClass> zlist = (from u in db.DataClass
                                         orderby u.DispOrder
                                         where u.ParentClassID == fjdid
                                         select u).ToList();
                for (int i = 0; i < zlist.Count; i++)
                {
                    DataClass fl = zlist[i];
                    TreeNode zroon = new TreeNode();                    zroon.Text = fl.ClassName;
                    zroon.Value = fl.ClassID.ToString();
                    //添加到当前父亲节点下
                    Pid.ChildNodes.Add(zroon);
                    //添加子节点的孩子结点,递归调用
                    InitleftZ(zroon);
                }
            }
        }现在是初始化的时候
如果有权限 就让checkbox=true
create table DataClass
(
ClassID int primary key identity(1,1) not null,
ClassName varchar(50) not null,
DispOrder int null,
ParentClassID int not null
)

解决方案 »

  1.   

      Private Sub CreateChildTree(ByVal ParentNode As System.Web.UI.WebControls.TreeNode)        ParentNode.Expanded = False
            Try
                Dim dv As DataView = GetSubAccFunctions(ParentNode.Value)
                Dim i As Integer
                For i = 0 To dv.Count - 1
                    Dim myTreeNode As New System.Web.UI.WebControls.TreeNode()
                    myTreeNode.Text = dv(i)("AccessFunctionDesc")
                    myTreeNode.Value = dv(i)("AccessSubFunctionID")                ParentNode.ChildNodes.Add(myTreeNode)                If dv(i)("HasChildren") Then
                        CreateChildTree(myTreeNode)
                    End If            Next
            Catch ex As Exception
                Throw
            Finally        End Try
        End Sub