Title : Fieldset with Collapsed="true" property missing fileupload control which is in side a UserControl. Description : I have a fieldset which consists of several other ext controls along with another fieldset inside .... tag. Inside this inner fieldset i put a usercontrol which consists of a fileupload control and a panel to show the list of uploaded documents. Its working fine when i put the parent fieldset's collapsed property set to false. But with collapsed property set to true the fileupload control is missing. But the respective documents showing panel is visible. Fieldset Code : FileUpload User Control Code : <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="FeasibleFileUploadControl.ascx.cs" Inherits="Kolme.Leads.UserControls.FeasibleFileUploadControl" %> <%-- --%> <%-- Success="#{btnViewDocument}_enableButtons2(#{lstFiles}, [#{btnRemove}.id, #{btnViewDocument}.id]);"--%> <%-- --%> FileUpload User Control Codebehind : using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using Ext.Net; using Kolme.Business.General; using Kolme.Entities.General; using Kolme.Leads.Classes.Common; using Kolme.UI.BaseClasses; using System.IO; namespace Kolme.Leads.UserControls { public partial class FeasibleFileUploadControl : Kolme.UI.BaseClasses.UserControlBase { public struct SUFFIXES { public const string DATASOURCE2 = "DataSource2"; public const string FILES2 = "Files2"; public const string REMOVEDFILES2 = "RemovedFiles2"; } public bool setpostbackoff { get { return (string.IsNullOrEmpty(hdnsetpostbackoff.Text)) ? false : bool.Parse(hdnsetpostbackoff.Text); } set { hdnsetpostbackoff.Text = value.ToString(); } } //public event getfilesfromuploadControl ucupload; //public delegate void getfilesfromuploadControl(object sender,DocumentUpload cls); public event ViewUploadedFile viewfile; public delegate void ViewUploadedFile(object sender, DocumentUpload cls); #region Properties private string _rootFolder; /// /// String value to get or set the root folder /// public string RootFolder { get { if (_rootFolder == null || _rootFolder == "") { return Request.MapPath(KolmeUtilities.UtilityFunctions.HostPath); } else { return Request.MapPath(_rootFolder); } } set { _rootFolder = value; } } /// /// Bool value to enable or disable browse control /// public bool DisableBrowseCtrl { get { if (ViewState["browseControl"] != null) { return (bool)ViewState["browseControl"]; } else { return true; } } set { ViewState["browseControl"] = value; } } /// /// Bool value to enable or disable remove document button /// public bool DisableRemoveButton { get { if (ViewState["disDelButton"] != null) { this.btnRemove.Disabled = (bool)(ViewState["disDelButton"]); return (bool)(ViewState["disDelButton"]); } else { return false; } } set { this.btnRemove.Disabled = value; ViewState["disDelButton"] = value; } } /// /// Bool value to enable or disable add document button /// public bool DisableAddButton { get { if (ViewState["disAddButton"] != null) { this.btnAdd.Disabled = (bool)(ViewState["disAddButton"]); //this.btnAdd.Disabled = true; return this.btnAdd.Disabled; } else { return true; } } set { this.btnAdd.Disabled = value; ViewState["disAddButton"] = value; } } /// /// Short value to set the TabOrder of browse control, add document button and /// remove document button /// public short TabOrder { get { if (ViewState["tabOrder"] != null) { return (short)(ViewState["tabOrder"]); } else { return 0; } } set { ViewState["tabOrder"] = value; } } public bool IsForImage { get { bool retval = false; if (!string.IsNullOrEmpty(hdnIsForImage.Text) && bool.TryParse(hdnIsForImage.Text, out retval)) { //Nothing to if try parse completes. } return retval; } set { hdnIsForImage.Text = value.ToString(); } } /// /// Unit value to set the document listbox height /// public Unit ListBoxHeight { get { return lstFiles.Height; } set { lstFiles.Height = value; } } /// /// DocumentUploadType enumeration value to set or get Document upload type (single/multiple) /// public KolmeUtilities.Enumerations.DocumentUploadType DocumentUploadType { get { KolmeUtilities.Enumerations.DocumentUploadType retVal = KolmeUtilities.Enumerations.DocumentUploadType.Single; if (!string.IsNullOrEmpty(hdnDocumentUploadType.Text)) { int type = 2; if (int.TryParse(hdnDocumentUploadType.Text, out type)) { retVal = (KolmeUtilities.Enumerations.DocumentUploadType)type; } } return retVal; } set { hdnDocumentUploadType.Text = value.GetHashCode().ToString(); } } public KolmeUtilities.Enumerations.DocumentPaths DocumentsPath { get { int intDocPath = KolmeUtilities.Enumerations.DocumentPaths.DocumentPath.GetHashCode(); KolmeUtilities.Enumerations.DocumentPaths docPath = KolmeUtilities.Enumerations.DocumentPaths.DocumentPath; if (!string.IsNullOrEmpty(hdnDocumentsPath.Text)) { int.TryParse(hdnDocumentsPath.Text, out intDocPath); docPath = (KolmeUtilities.Enumerations.DocumentPaths)intDocPath; } return docPath; } set { hdnDocumentsPath.Text = value.GetHashCode().ToString(); } } public List lstUploadedFiles2 { get { List lstReturn = new List(); if (!string.IsNullOrEmpty(hdnListUploadDoc.Text)) { lstReturn = JSON.Deserialize>(hdnListUploadDoc.Text); } return lstReturn; } set { hdnListUploadDoc.Text = JSON.Serialize(value); } } public string GetCacheKey(string UniqueKey) { return UniqueKey; } public List DataSource { get { List retVal = new List(); string CacheKey = GetCacheKey(SUFFIXES.DATASOURCE2); if (KolmeUtilities.UtilityFunctions.GetObjectFromCache(CacheKey) != null) { retVal = (List)KolmeUtilities.UtilityFunctions.GetObjectFromCache(CacheKey); } else { this.DataSource = retVal; } return retVal; } set { string CacheKey = GetCacheKey(SUFFIXES.DATASOURCE2); KolmeUtilities.UtilityFunctions.AddObjectToCache(CacheKey, value); } } public List RemovedFilesList { get { List retVal = new List(); string CacheKey = GetCacheKey(SUFFIXES.REMOVEDFILES2); if (KolmeUtilities.UtilityFunctions.GetObjectFromCache(CacheKey) != null) { retVal = (List)KolmeUtilities.UtilityFunctions.GetObjectFromCache(CacheKey); } else { this.listNEw = retVal; } return retVal; } private set { string CacheKey = GetCacheKey(SUFFIXES.REMOVEDFILES2); KolmeUtilities.UtilityFunctions.AddObjectToCache(CacheKey, value); } } public bool IsForView { get { return fufBrowse3.Hidden; } set { fufBrowse3.Hidden = value; btnRemove.Hidden = value; } } public bool IsForClaimDocs //Claim Documents { get { return !string.IsNullOrEmpty(hdnIsForClaimDocs.Text) ? Convert.ToBoolean(hdnIsForClaimDocs.Text) : false; } set { hdnIsForClaimDocs.Text = value.ToString(); } } public List DocumentDetails { get { List retVal = new List(); if (!string.IsNullOrEmpty(hdnDocumentDetails.Text)) { retVal = (List)Ext.Net.JSON.Deserialize(hdnDocumentDetails.Text, typeof(List)); } return retVal; } set { hdnDocumentDetails.Text = Ext.Net.JSON.Serialize(value); } } public string Label { get; set; } public List RemovedGuidList { get { List retVal = new List(); if (!string.IsNullOrEmpty(hdnRemovedList.Text)) { retVal = (List)Ext.Net.JSON.Deserialize(hdnRemovedList.Text, typeof(List)); } return retVal; } set { hdnRemovedList.Text = Ext.Net.JSON.Serialize(value); } } public List listNEw { get { List retVal = new List(); if (!string.IsNullOrEmpty(hdnNewlist.Text)) { retVal = (List)Ext.Net.JSON.Deserialize(hdnNewlist.Text, typeof(List)); } return retVal; } set { hdnNewlist.Text = Ext.Net.JSON.Serialize(value); } } public bool? RequestFromTestCertificate { get; set; } public bool EnableViewMode { get; set; } #endregion #region Private Methods public void ButtonsViewEnable() { btnViewDocument.Disabled = false; } private void EnaDisRemoveDocsButton() { if (!this.DisableRemoveButton) { btnRemove.Enabled = true; } else { btnRemove.Enabled = false; ViewState["EnabledRemoveButton"] = false; } } private void lstFiles_PreRender(object sender, EventArgs e) { if (lstFiles != null && lstFiles.Items.Count > 0) { pnlFiles.SetTitle(string.Format(" s ({0})", lstFiles.Items.Count.ToString())); } } private void RemovePostFileByName(ArrayList arrFiles, string postFileName) { for (int Index = 0; Index <= arrFiles.Count - 1; Index++) { HttpPostedFile objPostedFile = (HttpPostedFile)arrFiles[Index]; if (System.IO.Path.GetFileName(objPostedFile.FileName).Contains(postFileName)) { arrFiles.Remove(objPostedFile); break; } } } private bool IsDuplicated(ArrayList arrFiles, string postFileName) { for (int Index = 0; Index <= arrFiles.Count - 1; Index++) { HttpPostedFile objPostedFile = (HttpPostedFile)arrFiles[Index]; if (objPostedFile.FileName.Contains(postFileName)) { return true; } } return false; } #endregion #region Protected Methods protected void Page_Load(object sender, EventArgs e) { fufBrowse3.Hidden = false; //setpostbackoff = true; if (!IsPostBack) { lstFiles.PreRender += new EventHandler(lstFiles_PreRender); try { if (this.DataSource.Count > 0) { btnViewDocument.Disabled = false; btnRemove.Disabled = false; } else { btnViewDocument.Disabled = true; btnRemove.Disabled = true; } if (this.EnableViewMode) { btnRemove.Disabled = true; btnAdd.Disabled = true; } } catch (Exception) { throw; } //if (this.DisableViewButton) //{ // btnViewDocument.Enabled = true; //} } this.viewfile += new ViewUploadedFile(FileUpload_viewfile); } private void FileUpload_viewfile(object sender, DocumentUpload cls) { } protected void btnAdd_Click(object sender, Ext.Net.DirectEventArgs e) { try { // ((BasePage)Page).SetPagelblMsg(this.Parent.Controls, ""); if (fufBrowse3.PostedFile.FileName != "") { // validate the file length (length specified in the web.config file) int intFileLength = Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["FileMaxSize"].ToString()); int intFileContentLength = fufBrowse3.PostedFile.ContentLength / 1024; // length in KB (since we're spcifying in web.config as KB and ContentLength returns length in BYTES) if (intFileContentLength > intFileLength) { //DisplayCustomMessageInValidationSummary("File size should not be greater than " + intFileLength.ToString() + "(KB), specified in the web.config"); Ext.Net.X.Msg.Show(new Ext.Net.MessageBoxConfig { Buttons = Ext.Net.MessageBox.Button.OK, Icon = Ext.Net.MessageBox.Icon.INFO, Title = "File Size", Message = "File size should not be greater than " + intFileLength.ToString() + "(KB)" }); return; } if (this.listNEw != null && this.listNEw.Count > 0) { this.DataSource = this.listNEw; } if (this.DocumentUploadType == KolmeUtilities.Enumerations.DocumentUploadType.Single) { //lstFiles.Items.Clear(); //this.UploadedFiles2.Clear(); ////foreach (FileUploadInfo fui in this.DataSource) ////{ //// this.RemovedFilesList.Add(fui); ////} //this.DataSource.Clear(); } else { this.UploadedFiles2.Add(fufBrowse3.PostedFile); Guid newDocId = Guid.NewGuid(); FileUploadInfo fuiItem = new FileUploadInfo(newDocId.ToString(), System.IO.Path.GetFileName(fufBrowse3.PostedFile.FileName), string.Empty, string.Empty, true); this.DataSource.Add(fuiItem); } if (!IsDuplicated(this.UploadedFiles2, fufBrowse3.PostedFile.FileName)) { //Add File this.UploadedFiles2.Add(fufBrowse3.PostedFile); Guid newDocId = Guid.NewGuid(); FileUploadInfo fuiItem = new FileUploadInfo(newDocId.ToString(), System.IO.Path.GetFileName(fufBrowse3.PostedFile.FileName), string.Empty, string.Empty, true); this.DataSource.Add(fuiItem); } } else { Ext.Net.X.MessageBox.Alert("Add File", "Browse the file and click add to upload"); } this.DataBind(); fufBrowse3.Reset(); } catch (Exception) { throw; } } protected void btnRemove_Click(object sender, Ext.Net.DirectEventArgs e) { if (lstFiles.SelectedItems.Count > 0) { foreach (Ext.Net.ListItem sel in lstFiles.SelectedItems) { hdnIndex.Value = sel.Index; try { //((Kolme.UI.BaseClasses.BasePage)Page).SetPagelblMsg(this.Parent.Controls, ""); if (sel != null) { if (this.listNEw.Count > 0 && this.listNEw != null) { this.DataSource = this.listNEw; } FileUploadInfo fObject = this.DataSource.Find(obj => { return obj.DocId == sel.Value; }); if (fObject != null) { this.DataSource.Remove(fObject); if (fObject.IsPostedFile) { RemovePostFileByName(this.UploadedFiles2, fObject.DocName); } else { DocumentUpload objDoc = new DocumentUpload(); objDoc.DocumentUploadId = Guid.Parse(sel.Value); objDoc.DocumentName = sel.Text; // this.RemovedFilesList.Add(fObject); List lstRemovedFiles = new List(); lstRemovedFiles = this.RemovedGuidList; lstRemovedFiles.Add(objDoc); this.RemovedGuidList = lstRemovedFiles; } } //Remove from list if (this.DataSource.Count <= 0) { this.DisableRemoveButton = true; } else { this.DisableRemoveButton = false; } } else { // ((Kolme.UI.BaseClasses.BasePage)Page).SetPagelblMsg(this.Parent.Controls, String.Format(HttpContext.GetGlobalResourceObject("Validations", "DocumentUploadMessage").ToString(), "remove")); } EnaDisRemoveDocsButton(); } catch (Exception) { throw; } } this.DataBind(); } } protected void ViewDocument_Click(object sender, DirectEventArgs e) { if (lstFiles.SelectedItems.Count > 0) { DocumentUpload doc = new DocumentUpload(); if (!string.IsNullOrEmpty(e.ExtraParams["RecordData"])) { FileUploadInfo fInfo = new FileUploadInfo(string.Empty, string.Empty, string.Empty, string.Empty, false); fInfo = Ext.Net.JSON.Deserialize(e.ExtraParams["RecordData"]); doc.DocumentName = fInfo.DocName; doc.DocumentPath = fInfo.DocPath; doc.VirtualPath = fInfo.DocVpath; doc.DocumentUploadId = Guid.Parse(fInfo.DocId); //if (fInfo != null) //{ // //save_file_from_url(fInfo.DocName, fInfo.DocVpath); // this.viewfile.Invoke(sender, doc); //} wndDocument.Collapsible = false; //Dev Url //string url = string.Format("{0}/DocumentViewer.aspx?path={1}", // KolmeUtilities.Common.CommonFunctions.GetUrl(KolmeUtilities.Enumerations.UrlOption.DirPath), doc.DocumentPath); //Test Url //string url = string.format("{0}/lab/pages/documentviewer.aspx?path={1}", //kolmeutilities.common.commonfunctions.geturl(kolmeutilities.enumerations.urloption.apppath), //doc.documentpath); //string url = string.Format("{0}DocumentViewer.aspx?path={1}", // KolmeUtilities.Common.CommonFunctions.GetUrl(KolmeUtilities.Enumerations.UrlOption.AppPath), // doc.DocumentPath); string url = string.Format("{0}/Leads/Pages/DocumentViewer.aspx?path={1}", KolmeUtilities.Common.CommonFunctions.GetUrl(KolmeUtilities.Enumerations.UrlOption.AppPath), doc.DocumentPath);//{0}/DocumentViewer.aspx?path={1}" wndDocument.Loader.Url = url; wndDocument.Loader.Mode = Ext.Net.LoadMode.Frame; wndDocument.Loader.DisableCaching = true; wndDocument.LoadContent(); wndDocument.Show(); wndDocument.Render(); } } } //if (lstFiles.SelectedItems.Count > 0) //{ // foreach (Ext.Net.ListItem sel in lstFiles.SelectedItems) // { // hdnIndex.Value = sel.Index; // try // { // //((Kolme.UI.BaseClasses.BasePage)Page).SetPagelblMsg(this.Parent.Controls, ""); // if (sel != null) // { // //FileUploadInfo fObject = listNEw.Find(obj => { return obj.DocId == sel.Value; }); // //if (fObject != null) // //{ // //save_file_from_url(fObject.DocName, fObject.DocVpath); // List lstDocuments = new DocumentUploadBLL().SelectByReferenceId(Guid.Parse(sel.Value)); // lstDocuments = lstDocuments.FindAll(x => x.DocumentUploadId == Guid.Parse(sel.Value)); // if (lstDocuments.Count > 0 && lstDocuments != null) // { // DocumentUpload obj = new DocumentUpload(); // obj = lstDocuments[0]; // System.IO.FileInfo file = new System.IO.FileInfo(obj.DocumentPath); // byte[] flDownload = File.ReadAllBytes(obj.DocumentPath); // HttpContext context = HttpContext.Current; // context.Response.ClearHeaders(); // context.Response.Clear(); // context.Response.AddHeader("content-disposition", "attachment;filename=" + obj.DocumentPath + ";"); // context.Response.ContentType = "application/force-download"; // context.Response.BinaryWrite(flDownload.ToArray()); // context.Response.Flush(); // context.Response.End(); // //} // } // //Remove from list // if (this.DataSource.Count <= 0) // { // this.DisableRemoveButton = true; // } // else // { // this.DisableRemoveButton = false; // } // } // //else // //{ // // ((Kolme.UI.BaseClasses.BasePage)Page).SetPagelblMsg(this.Parent.Controls, String.Format(HttpContext.GetGlobalResourceObject("Validations", "DocumentUploadMessage").ToString(), "remove")); // //} // //EnaDisRemoveDocsButton(); // } // catch (Exception) // { // throw; // } // } // } // //end //} //public void viewfile(object sender, DocumentUpload doc) //{ //} protected void lstFiles_Selected(object sender, DirectEventArgs e) { if (lstFiles.SelectedItems.Count == 1) { foreach (Ext.Net.ListItem sel in lstFiles.SelectedItems) { hdnIndex.Value = sel.Index; try { //((Kolme.UI.BaseClasses.BasePage)Page).SetPagelblMsg(this.Parent.Controls, ""); if (sel != null) { FileUploadInfo fObject = this.DataSource.Find(obj => { return obj.DocId == sel.Value; }); if (fObject != null && fObject.DocPath != "") { if (RequestFromTestCertificate.HasValue == false) { btnViewDocument.Enabled = true; } else { btnViewDocument.Enable();// = true; } } else { if (RequestFromTestCertificate.HasValue == false) { btnViewDocument.Disabled = true; btnRemove.Disabled = false; } else { btnViewDocument.Disable(); btnRemove.Enable(); } } } } catch (Exception ex) { } } } else { this.btnViewDocument.Disable(); } //SelectedListItem item= } protected void lstFiles_Change(object sender, DirectEventArgs e) { if (lstFiles.SelectedItems.Count == 1) { foreach (Ext.Net.ListItem sel in lstFiles.SelectedItems) { hdnIndex.Value = sel.Index; try { //((Kolme.UI.BaseClasses.BasePage)Page).SetPagelblMsg(this.Parent.Controls, ""); if (sel != null) { FileUploadInfo fObject = this.DataSource.Find(obj => { return obj.DocId == sel.Value; }); if (fObject != null && fObject.DocPath != "") { btnViewDocument.Enable(); } else { this.btnViewDocument.Disable(); } } } catch (Exception ex) { } } } else { this.btnViewDocument.Disable(); } } //public void save_file_from_url(string file_name, string url) //{ // byte[] content; // try // { // if (System.Configuration.ConfigurationManager.AppSettings["IsHTTPS"] == "true") // { // System.Net.ServicePointManager.CertificatePolicy = new TrustAllCertificatePolicy(); // HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); // WebResponse response = request.GetResponse(); // Stream stream = response.GetResponseStream(); // using (BinaryReader br = new BinaryReader(stream)) // { // content = br.ReadBytes(500000000); // br.Close(); // } // response.Close(); // Response.Clear(); // Response.Buffer = true; // Response.BufferOutput = true; // //Response.ContentType = "application/text"; // Response.ContentType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; // Response.AddHeader("Content-Disposition", "attachment; filename=" + file_name); // Response.CacheControl = "public"; // //writes buffer to OutputStream // Response.OutputStream.Write(content, 0, content.Length); // Response.End(); // } // else // { // HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); // WebResponse response = request.GetResponse(); // Stream stream = response.GetResponseStream(); // using (BinaryReader br = new BinaryReader(stream)) // { // content = br.ReadBytes(500000000); // br.Close(); // } // response.Close(); // Response.Clear(); // Response.Buffer = true; // Response.BufferOutput = true; // //Response.ContentType = "application/text"; // Response.ContentType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; // Response.AddHeader("Content-Disposition", "attachment; filename=" + file_name); // Response.CacheControl = "public"; // //writes buffer to OutputStream // Response.OutputStream.Write(content, 0, content.Length); // Response.End(); // } // } // finally // { // } //} protected void lstFiles_DataBinding(object sender, EventArgs e) { EnaDisRemoveDocsButton(); } #endregion #region Public Methods public string replaceAll(string str, string soeg, string erstat) { string st = str; if (soeg.Length == 0) return st; int idx = st.IndexOf(soeg); while (idx >= 0) { st = st.Substring(0, idx) + erstat + st.Substring(idx + soeg.Length); idx = st.IndexOf(soeg); } return st; } /// /// To Clear the ListBox /// public void ClearList() { strFileUpload2.RemoveAll(); } /// /// Method to clear arraylists and cache /// public void ClearFiles() { ClearList(); this.UploadedFiles2.Clear(); // this.RemovedFilesList.Clear(); this.RemovedGuidList = new List(); // this.listNEw.Clear(); List lst = new List(); lst = this.listNEw; lst.Clear(); this.listNEw = lst; this.DataSource.Clear(); } public override void DataBind() { base.DataBind(); strFileUpload2.RemoveAll(); foreach (FileUploadInfo objInfo in this.DataSource) { Dictionary dictRecord = new Dictionary(); dictRecord.Add("DocId", objInfo.DocId); dictRecord.Add("DocName", objInfo.DocName); dictRecord.Add("DocPath", objInfo.DocPath); dictRecord.Add("DocVpath", objInfo.DocVpath); dictRecord.Add("IsPostedFile", objInfo.IsPostedFile); strFileUpload2.Insert(0, dictRecord); } this.listNEw = this.DataSource; strFileUpload2.DataSource = this.DataSource; strFileUpload2.DataBind(); if (this.DataSource == null || this.DataSource.Count == 0) { btnRemove.Disabled = true; } //this.DataSource.Clear(); //strFileUpload2.LoadData(this.DataSource); } public void BindDocuments(Guid DocumentUploadId) { List lstDoc = new List(); DocumentUpload objDocumentUpload = new DocumentUpload(); DocumentUploadBLL objDocumentUploadBLL = new DocumentUploadBLL(); objDocumentUpload = objDocumentUploadBLL.SelectById(DocumentUploadId); lstDoc.Add(objDocumentUpload); if (lstDoc.Count > 0) { foreach (DocumentUpload eachFile in lstDoc) { eachFile.IsOldFile = true; } //ucFileUpload.DisableRemoveButton = false; } strFileUpload2.DataSource = lstDoc; strFileUpload2.DataBind(); lstFiles.Render(); strFileUpload2.Render(); } public bool IsImageFile() { if (lstFiles.SelectedItems.Count == 0 || lstFiles.SelectedItems[0].Text.Contains("Image/jpg") || lstFiles.SelectedItems[0].Text.Contains("png") || lstFiles.SelectedItems[0].Text.Contains("jpg") || lstFiles.SelectedItems[0].Text.Contains("gif")) { return true; } else return false; } public ArrayList GetFiles() { return this.UploadedFiles2; } public ArrayList UploadedFiles2 { get { ArrayList retVal = new ArrayList(); string CacheKey = GetCacheKey(SUFFIXES.FILES2); if (KolmeUtilities.UtilityFunctions.GetObjectFromCache(CacheKey) != null) { retVal = (ArrayList)KolmeUtilities.UtilityFunctions.GetObjectFromCache(CacheKey); } else { this.UploadedFiles2 = retVal; } return retVal; } private set { string CacheKey = GetCacheKey(SUFFIXES.FILES2); KolmeUtilities.UtilityFunctions.AddObjectToCache(CacheKey, value); } } #endregion } }