public void AddDirectory(TreeNodeCollection nodes, CmsDirectory dir) { TreeNode node = new TreeNode(); node.NavigateUrl = dir.FileType.BrowseUrl + "?FileID=" + dir.ID; node.Text = dir.Title; node.Value = dir.FileID.ToString(); if (CurrentFile != null && CurrentFile.IsDescendantOf(dir)) { node.ImageUrl = dir.FileType.Module.ResourceFolder + "/images/icon_" + dir.FileType.CssClass + "_open.png"; if (CurrentFile.ID == dir.ID || CurrentFile.ParentID == dir.ID) { node.Selected = true; } } else { node.Expanded = false; node.ImageUrl = dir.FileType.Module.ResourceFolder + "/images/icon_" + dir.FileType.CssClass + ".png"; } nodes.Add(node); if (dir.Subdirectories.Count > 0) { if (CurrentFile != null && CurrentFile.IsDescendantOf(dir) && CurrentFile.FileID != dir.FileID) { node.Expanded = true; foreach (CmsDirectory sub in dir.Subdirectories) { if (sub.State != CmsState.Deleted) { AddDirectory(node.ChildNodes, sub); } } } else { node.PopulateOnDemand = true; } } }
protected void Page_Load(object sender, System.EventArgs e) { if (!IsPostBack) { if (Request["FileID"] != null && !Guid.Empty.Equals(Request["FileID"])) { CurrentDirectory = (CmsDirectory)CmsFile.FindByID(new Guid(Request["FileID"])); } else { CurrentDirectory = CmsContext.Current.RootDirectory; } DataGridAdapterFiles.SortExpression = "SortOrder"; } //Rebind rather than use viewstate BindDataGridFiles(); AddLink("~/Css/style.css"); AddLink("~/Css/icons.css"); foreach (RegisteredModule registeredModule in XenosynthContext.Current.Modules) { AddLink(registeredModule.ResourceFolder + "/Css/style.css"); } }