private void InitializeTreeViews() { var rootFolder = RootFolderViewModel; var rootNode = new DnnTreeNode { ExpandMode = HasViewPermissions(rootFolder.Permissions) ? TreeNodeExpandMode.WebService : TreeNodeExpandMode.ClientSide, Text = rootFolder.FolderName, ImageUrl = rootFolder.IconUrl, Value = rootFolder.FolderID.ToString(CultureInfo.InvariantCulture), Category = rootFolder.FolderMappingID.ToString(CultureInfo.InvariantCulture), Selected = true, Expanded = true }; var folderId = rootFolder.FolderID; var nextNode = rootNode; foreach (var folderName in Path.Split('/')) { LoadSubfolders(nextNode, folderId, folderName, out nextNode, out folderId); if (nextNode == null) { // The requested folder does not exist or the user does not have permissions break; } } if (nextNode != null) { nextNode.Expanded = false; nextNode.Selected = true; rootNode.ExpandMode = TreeNodeExpandMode.ClientSide; rootNode.Selected = false; } rootNode.Attributes.Add("permissions", GetPermissionsForRootFolder(rootFolder.Permissions).ToJson()); FolderTreeView.Nodes.Add(rootNode); DestinationTreeView.Nodes.Add(rootNode.Clone()); InitializeTreeViewContextMenu(); }