示例#1
0
    public void BindTree(BbTreeView bbTreeView)
    {
        string selectedValue = ((!string.IsNullOrEmpty(selected)) ? selected : string.Empty);

        RemoveNodes(RadTreeView1.Nodes);

        if (bbTreeView != null && bbTreeView.Nodes.Count > 0)
        {
            foreach (BbTreeViewNode rootNode in bbTreeView.Nodes)
            {
                RadTreeNode radParentNode = new RadTreeNode(rootNode.Value + rootNode.Menu, rootNode.Id)
                {
                    ImageUrl = rootNode.Icon
                };

                RadTreeView1.Nodes.Add(radParentNode);

                if (rootNode.IsBranch)
                {
                    AddChildNodes(rootNode, radParentNode);
                }
            }
        }

        Selected = selectedValue;

        ExpandRootNodes();
    }
示例#2
0
    private void BindCategoriesTreeStructure()
    {
        TreeNodes = new BbTreeView();

        List <Category>        allCategories  = NewsManager.GetAllCategories().ToList <Category>();
        IEnumerable <Category> rootCategories = from x in allCategories where x.ParentCategory == null select x;

        List <BbTreeViewNode> nodes = new List <BbTreeViewNode>();

        foreach (Category rootCategory in rootCategories)
        {
            if (UserHasPermission(rootCategory.Id))
            {
                BbTreeViewNode node = new BbTreeViewNode(rootCategory.Id, rootCategory.Name, false, PathIconBranch, null);
                node.Menu.AddRange(CreateContextMenuContent(rootCategory.Id, rootCategory.Name));
                if (ShowItemCount)
                {
                    node.Value += " " + GetDisplayItemCount(rootCategory);
                }

                nodes.Add(node);
                BuildCategoriesTreeStructure(node, allCategories, rootCategory, maxLevel, 0);
            }
        }
        TreeNodes.Nodes.AddRange(nodes);
    }