public void CreateUserFromNewButton(TenantData data, string planName) { Log.Information("---Click New button---"); Browser.WaitForAjax(); OpenDrawer(); Log.Information("---Select User Account---"); Browser.WaitForAjax(); this.drawer.SelectItem("USER ACCOUNT"); Browser.WaitForAjax(); this.drawer.SelectItem("QUICK CREATE"); var emailTextBox = new HtmlTextBox(this, this.Browser.FindElement(By.Id("accountEmail"))); emailTextBox.SetText(data.emailAddress); var passwordTextBox = new HtmlTextBox(this, this.Browser.FindElement(By.Id("accountPassword"))); passwordTextBox.SetText(data.password); var repeatPswTextBox = new HtmlTextBox(this, this.Browser.FindElement(By.Id("confirmPassword"))); repeatPswTextBox.SetText(data.password); Thread.Sleep(1000 * 2); IWebElement ee = this.SearchContext.FindElement(By.Id("accountPlanDropDown")); SelectElement e = new SelectElement(ee); e.WrappedElement.Click(); e.SelectByText(planName + " (public)"); Thread.Sleep(1000 * 2); var createButton = new HtmlButton(this, this.Browser.FindElement(By.XPath("//*[text()='Create']"))); createButton.Click(); }
public void Visit(HtmlTextBox h) { sb.Append(Tabs(h.Depth)); sb.Append(string.Format("<{0}", h.Tag)); foreach (var a in h.Attributes.Where(a => a.IsSet)) { sb.Append(a); } foreach (var e in h.Events.Where(e => e.IsSet)) { sb.Append(e); } sb.AppendLine(">"); }
private static HtmlTextBox CreateHtmlTextBoxFromDataTable(DataTable dataTable) { var fileName = Path.GetTempFileName(); var fileStream = new FileStream(fileName, FileMode.OpenOrCreate); using (var streamWriter = new StreamWriter(fileStream, Encoding.UTF8)) { var columnIndexes = new int[dataTable.Columns.Count]; for (var i = 0; i < columnIndexes.Length; i++) columnIndexes[i] = i; HtmlFormatter.Write(dataTable.DefaultView, columnIndexes, streamWriter); } var htmlTextBox = new HtmlTextBox(); htmlTextBox.Navigate(fileName); return htmlTextBox; }
public virtual void Visit(FormDatePicker formDatePicker, HtmlContainer htmlContainer) { if (formDatePicker.Icon == FormIcon.NotSet) { return; } HtmlTextBox htmlTextBox = null; int i; for (i = 0; i < htmlContainer.Contents.Count; i++) { if (htmlContainer.Contents[i] is HtmlTextBox) { htmlTextBox = (HtmlTextBox)htmlContainer.Contents[i]; break; } } if (htmlTextBox == null) { return; } htmlContainer.Remove(htmlTextBox); HtmlItalic htmlItalic = new HtmlItalic(); htmlItalic.Class.AddRange(IconClass(formDatePicker.Icon)); HtmlDiv htmlDiv = new HtmlDiv(); htmlDiv.Add(htmlTextBox); htmlDiv.Insert(prepend ? 0 : 1, htmlItalic); htmlContainer.Insert(i, htmlDiv); }
private static HtmlTextBox CreateHtmlTextBoxFromDataTable(DataTable dataTable) { var fileName = Path.GetTempFileName(); var fileStream = new FileStream(fileName, FileMode.OpenOrCreate); using (var streamWriter = new StreamWriter(fileStream, Encoding.UTF8)) { var columnIndexes = new int[dataTable.Columns.Count]; for (var i = 0; i < columnIndexes.Length; i++) { columnIndexes[i] = i; } HtmlFormatter.Write(dataTable.DefaultView, columnIndexes, streamWriter); } var htmlTextBox = new HtmlTextBox(); htmlTextBox.Navigate(fileName); //while (webBrowser.ReadyState != SHDocVw.tagREADYSTATE.READYSTATE_COMPLETE) //{ // Application.DoEvents(); //} //File.Delete(fileName); return htmlTextBox; }
public virtual void Visit(FormTextBox formTextBox, HtmlContainer htmlContainer) { HtmlFieldset htmlFieldset = verbose ? new HtmlFieldset(formTextBox.Path) : new HtmlFieldset(); htmlFieldset.Class.Add("formTextBox"); if (!string.IsNullOrWhiteSpace(formTextBox.CssClass)) { htmlFieldset.Class.AddRange(formTextBox.CssClass.Split(' ').Where(s => s != string.Empty)); } htmlFieldset.Class.Add("form-group"); if (!string.IsNullOrWhiteSpace(formTextBox.Path)) { htmlFieldset.Class.Add(string.Format("{0}{1}", "formId", formTextBox.Path)); } htmlFieldset.Class.Add("formField"); if (initialize) { htmlFieldset.Class.Add(formTextBox.IsRequired ? "formRequired" : "formOptional"); } else { if (formTextBox.HasValue) { htmlFieldset.Class.Add(formTextBox.IsValid ? "formValid" : "formInvalid"); } else { htmlFieldset.Class.Add(formTextBox.IsRequired ? "formNotEntered" : "formOptional"); } } htmlFieldset.Hidden.Value = formTextBox.IsHidden; htmlContainer.Add(htmlFieldset); HtmlTextBox htmlTextBox = new HtmlTextBox(formTextBox.Path); htmlTextBox.Class.Add("form-control"); htmlTextBox.Disabled.Value = formTextBox.IsDisabled; htmlTextBox.ReadOnly.Value = formTextBox.IsReadOnly; htmlTextBox.Value.Value = formTextBox.Value; string placeholder = null; if (!string.IsNullOrWhiteSpace(formTextBox.Placeholder)) { if (formTextBox.IsRequired && formTextBox.IsRequiredInPlaceholder && !string.IsNullOrWhiteSpace(formTextBox.RequiredMark)) { placeholder = string.Format("{0} {1}", formTextBox.Placeholder, formTextBox.RequiredMark); } else if (!formTextBox.IsRequired && formTextBox.IsOptionalInPlaceholder && !string.IsNullOrWhiteSpace(formTextBox.OptionalMark)) { placeholder = string.Format("{0} {1}", formTextBox.Placeholder, formTextBox.OptionalMark); } else { placeholder = formTextBox.Placeholder; } } htmlTextBox.Placeholder.Value = placeholder; if (!initialize && firstInvalidId == null) { if (formTextBox.IsRequired && !formTextBox.HasValue || !formTextBox.IsValid) { firstInvalidId = htmlTextBox.Id.Value; } } switch (formTextBox.OrderElements) { case OrderElements.LabelMarkInput: AddLabelMark(formTextBox, htmlTextBox, htmlFieldset); htmlFieldset.Add(htmlTextBox); break; case OrderElements.MarkLabelInput: AddMarkLabel(formTextBox, htmlTextBox, htmlFieldset); htmlFieldset.Add(htmlTextBox); break; case OrderElements.InputLabelMark: htmlFieldset.Add(htmlTextBox); AddLabelMark(formTextBox, htmlTextBox, htmlFieldset); break; case OrderElements.InputMarkLabel: htmlFieldset.Add(htmlTextBox); AddMarkLabel(formTextBox, htmlTextBox, htmlFieldset); break; case OrderElements.LabelInputMark: AddLabel(formTextBox, htmlTextBox, htmlFieldset); htmlFieldset.Add(htmlTextBox); AddMark(formTextBox, htmlTextBox, htmlFieldset); break; case OrderElements.MarkInputLabel: AddMark(formTextBox, htmlTextBox, htmlFieldset); htmlFieldset.Add(htmlTextBox); AddLabel(formTextBox, htmlTextBox, htmlFieldset); break; default: case OrderElements.NotSet: break; } if (initialize) { return; } string message = null; if (formTextBox.UseLastMessage) { if (!string.IsNullOrEmpty(formTextBox.LastMessage)) { message = formTextBox.LastMessage; } } else if (formTextBox.IsRequired && !formTextBox.HasValue) { message = formTextBox.RequiredMessage; } else if (!formTextBox.IsValid) { message = formTextBox.ValidationMessage; } if (message == null) { return; } HtmlLabel htmlLabelMessage = new HtmlLabel(verbose ? string.Format("{0}{1}", formTextBox.Path, "Message") : ""); htmlLabelMessage.Class.Add("formValidationMessage"); htmlLabelMessage.For.Value = htmlTextBox.Id.Value; htmlLabelMessage.Add(new HtmlText(message)); htmlFieldset.Add(htmlLabelMessage); }
private void DesignReport() { //get the processing table object since we're in the context of event //construct the select statement based on the selected report parameters DataSet ds = new DataSet(); var dataTable = new DataTable(); dataTable.Columns.Add("Column1", typeof(int)); dataTable.Columns.Add("Column2", typeof(int)); dataTable.Columns.Add("Column3", typeof(int)); dataTable.Rows.Add(1, 2, 3); dataTable.Rows.Add(14, 23, 32); dataTable.Rows.Add(12, 24, 34); ds.Tables.Add(dataTable); table1.DataSource = ds.Tables[0]; //create two HtmlTextBox items (one for header and one for data) which would be added to the items collection of the table HtmlTextBox textboxGroup; HtmlTextBox textBoxTable; //we do not clear the Rows collection, since we have a details row group and need to create columns only table1.ColumnGroups.Clear(); table1.Body.Columns.Clear(); table1.Body.Rows.Clear(); int i = 0; table1.ColumnHeadersPrintOnEveryPage = true; foreach (System.Data.DataColumn dc in ds.Tables[0].Columns) { TableGroup tableGroupColumn = new TableGroup(); table1.ColumnGroups.Add(tableGroupColumn); table1.Body.Columns.Add(new TableBodyColumn(Unit.Inch(1))); textboxGroup = new HtmlTextBox(); textboxGroup.Style.BorderColor.Default = Color.Black; textboxGroup.Style.BorderStyle.Default = BorderType.Solid; textboxGroup.Value = dc.ColumnName; textboxGroup.Size = new SizeU(Unit.Inch(1.1), Unit.Inch(0.3)); tableGroupColumn.ReportItem = textboxGroup; textBoxTable = new HtmlTextBox(); textBoxTable.Style.BorderColor.Default = Color.Black; textBoxTable.Style.BorderStyle.Default = BorderType.Solid; textBoxTable.Value = @"=Fields." + dc.ColumnName; textBoxTable.Size = new SizeU(Unit.Inch(1.1), Unit.Inch(0.3)); this.table1.Body.SetCellContent(0, i++, textBoxTable); this.table1.Items.AddRange(new ReportItemBase[] { textBoxTable, textboxGroup }); } table1.NoDataMessage = @"No Data Available!"; //table1.DataSource = dataTable; //var reportObject = (ReportFull)Report.ReportParameters["reportFull"].Value; textBox1.Value = @"Header from Code"; textBox2.Value = @"First Heading of Image"; textBox3.Value = @"Second Heading of Image"; textBox4.Value = @"Signature Value from Code"; //pictureBox1.Value = @"C:\Users\Techverx\Downloads\1st Image.jpeg"; //pictureBox2.Value = @"C:\Users\Techverx\Downloads\1st Image.jpeg"; }
private HtmlDiv BuildDivNumberSpinner(FormNumberSpinner formNumberSpinner, HtmlTextBox htmlTextBox) { HtmlDiv htmlDivNumberSpinner = new HtmlDiv(); string btnDecrName = verbose ? string.Format("{0}{1}", "Decr", formNumberSpinner.Path) : ""; string btnIncrName = verbose ? string.Format("{0}{1}", "Incr", formNumberSpinner.Path) : ""; string btnDecrOnClick = null; string btnIncrOnClick = null; if (formNumberSpinner.Update) { btnDecrOnClick = string.Format("__doPostBack('{0}', 'Decr');", formNumberSpinner.Path); btnIncrOnClick = string.Format("__doPostBack('{0}', 'Incr');", formNumberSpinner.Path); } else if (htmlTextBox.Id.IsSet) { btnDecrOnClick = string.Format("NumberSpinnerDecr('{0}');", htmlTextBox.Id.Value); btnIncrOnClick = string.Format("NumberSpinnerIncr('{0}');", htmlTextBox.Id.Value); scriptRegistry.Include("NumberSpinnerDecr"); scriptRegistry.Include("NumberSpinnerIncr"); } HtmlButton htmlButtonDecr = new HtmlButton(btnDecrName, btnDecrOnClick); HtmlButton htmlButtonIncr = new HtmlButton(btnIncrName, btnIncrOnClick); htmlButtonDecr.Value.Value = formNumberSpinner.DecrText; htmlButtonIncr.Value.Value = formNumberSpinner.IncrText; htmlButtonDecr.Disabled.Value = htmlButtonIncr.Disabled.Value = formNumberSpinner.IsReadOnly || (formNumberSpinner.Update && !formNumberSpinner.HasValue); if (!initialize && firstInvalidId == null) { if (formNumberSpinner.IsRequired && !formNumberSpinner.HasValue || !formNumberSpinner.IsValid) { firstInvalidId = htmlTextBox.Id.Value; } } switch (formNumberSpinner.OrderNumberSpinner) { case OrderNumberSpinner.NumberDecrIncr: htmlDivNumberSpinner.Add(htmlTextBox); htmlDivNumberSpinner.Add(htmlButtonDecr); htmlDivNumberSpinner.Add(htmlButtonIncr); break; case OrderNumberSpinner.NumberIncrDecr: htmlDivNumberSpinner.Add(htmlTextBox); htmlDivNumberSpinner.Add(htmlButtonIncr); htmlDivNumberSpinner.Add(htmlButtonDecr); break; case OrderNumberSpinner.DecrNumberIncr: htmlDivNumberSpinner.Add(htmlButtonDecr); htmlDivNumberSpinner.Add(htmlTextBox); htmlDivNumberSpinner.Add(htmlButtonIncr); break; case OrderNumberSpinner.IncrNumberDecr: htmlDivNumberSpinner.Add(htmlButtonIncr); htmlDivNumberSpinner.Add(htmlTextBox); htmlDivNumberSpinner.Add(htmlButtonDecr); break; case OrderNumberSpinner.DecrIncrNumber: htmlDivNumberSpinner.Add(htmlButtonDecr); htmlDivNumberSpinner.Add(htmlButtonIncr); htmlDivNumberSpinner.Add(htmlTextBox); break; case OrderNumberSpinner.IncrDecrNumber: htmlDivNumberSpinner.Add(htmlButtonIncr); htmlDivNumberSpinner.Add(htmlButtonDecr); htmlDivNumberSpinner.Add(htmlTextBox); break; default: case OrderNumberSpinner.NotSet: break; } return(htmlDivNumberSpinner); }
public virtual void Visit(FormNumberSpinner formNumberSpinner, HtmlContainer htmlContainer) { HtmlDiv htmlDiv = verbose ? new HtmlDiv(formNumberSpinner.Path) : new HtmlDiv(); htmlDiv.Class.Add("formNumberSpinner"); if (!string.IsNullOrWhiteSpace(formNumberSpinner.CssClass)) { htmlDiv.Class.AddRange(formNumberSpinner.CssClass.Split(' ').Where(s => s != string.Empty)); } if (!string.IsNullOrWhiteSpace(formNumberSpinner.Path)) { htmlDiv.Class.Add(string.Format("{0}{1}", "formId", formNumberSpinner.Path)); } htmlDiv.Class.Add("formField"); if (initialize) { htmlDiv.Class.Add(formNumberSpinner.IsRequired ? "formRequired" : "formOptional"); } else { if (formNumberSpinner.HasValue) { htmlDiv.Class.Add(formNumberSpinner.IsValid ? "formValid" : "formInvalid"); } else { htmlDiv.Class.Add(formNumberSpinner.IsRequired ? "formNotEntered" : "formOptional"); } } htmlDiv.Hidden.Value = formNumberSpinner.IsHidden; htmlContainer.Add(htmlDiv); HtmlTextBox htmlTextBox = new HtmlTextBox(formNumberSpinner.Path); htmlTextBox.Disabled.Value = formNumberSpinner.IsDisabled; htmlTextBox.ReadOnly.Value = formNumberSpinner.IsReadOnly || !formNumberSpinner.IsDirectInput; htmlTextBox.Value.Value = formNumberSpinner.HasValue ? formNumberSpinner.Value.ToString(string.Format("F{0}", formNumberSpinner.Precision)) : ""; string placeholder = null; if (!string.IsNullOrWhiteSpace(formNumberSpinner.Placeholder)) { if (formNumberSpinner.IsRequired && formNumberSpinner.IsRequiredInPlaceholder && !string.IsNullOrWhiteSpace(formNumberSpinner.RequiredMark)) { placeholder = string.Format("{0} {1}", formNumberSpinner.Placeholder, formNumberSpinner.RequiredMark); } else if (!formNumberSpinner.IsRequired && formNumberSpinner.IsOptionalInPlaceholder && !string.IsNullOrWhiteSpace(formNumberSpinner.OptionalMark)) { placeholder = string.Format("{0} {1}", formNumberSpinner.Placeholder, formNumberSpinner.OptionalMark); } else { placeholder = formNumberSpinner.Placeholder; } } htmlTextBox.Placeholder.Value = placeholder; if (formNumberSpinner.Update) { htmlTextBox.Change.Value = string.Format("__doPostBack('{0}', '');", formNumberSpinner.Path); } else { if (formNumberSpinner.HasValue) { htmlTextBox.DataNumber.Value = formNumberSpinner.Value; } if (formNumberSpinner.Min.HasValue) { htmlTextBox.DataMin.Value = formNumberSpinner.Min.Value; } if (formNumberSpinner.Max.HasValue) { htmlTextBox.DataMax.Value = formNumberSpinner.Max.Value; } htmlTextBox.DataStep.Value = formNumberSpinner.Step; htmlTextBox.DataPrecision.Value = formNumberSpinner.Precision; htmlTextBox.Blur.Value = string.Format("NumberSpinnerBlur('{0}')", htmlTextBox.Id.Value); scriptRegistry.Include("NumberSpinnerBlur"); } HtmlDiv htmlDivNumberSpinner = BuildDivNumberSpinner(formNumberSpinner, htmlTextBox); switch (formNumberSpinner.OrderElements) { case OrderElements.LabelMarkInput: AddLabelMark(formNumberSpinner, htmlTextBox, htmlDiv); htmlDiv.Add(htmlDivNumberSpinner); break; case OrderElements.MarkLabelInput: AddMarkLabel(formNumberSpinner, htmlTextBox, htmlDiv); htmlDiv.Add(htmlDivNumberSpinner); break; case OrderElements.InputLabelMark: htmlDiv.Add(htmlTextBox); AddLabelMark(formNumberSpinner, htmlTextBox, htmlDiv); break; case OrderElements.InputMarkLabel: htmlDiv.Add(htmlDivNumberSpinner); AddMarkLabel(formNumberSpinner, htmlTextBox, htmlDiv); break; case OrderElements.LabelInputMark: AddLabel(formNumberSpinner, htmlTextBox, htmlDiv); htmlDiv.Add(htmlDivNumberSpinner); AddMark(formNumberSpinner, htmlTextBox, htmlDiv); break; case OrderElements.MarkInputLabel: AddMark(formNumberSpinner, htmlTextBox, htmlDiv); htmlDiv.Add(htmlDivNumberSpinner); AddLabel(formNumberSpinner, htmlTextBox, htmlDiv); break; default: case OrderElements.NotSet: break; } if (initialize) { return; } string message = null; if (formNumberSpinner.UseLastMessage) { if (!string.IsNullOrEmpty(formNumberSpinner.LastMessage)) { message = formNumberSpinner.LastMessage; } } else if (formNumberSpinner.IsRequired && !formNumberSpinner.HasValue) { message = formNumberSpinner.RequiredMessage; } else if (!formNumberSpinner.IsValid) { message = formNumberSpinner.ValidationMessage; } if (message == null) { return; } HtmlLabel htmlLabelMessage = new HtmlLabel(verbose ? string.Format("{0}{1}", formNumberSpinner.Path, "Message") : ""); htmlLabelMessage.Class.Add("formValidationMessage"); htmlLabelMessage.For.Value = htmlTextBox.Id.Value; htmlLabelMessage.Add(new HtmlText(message)); htmlDiv.Add(htmlLabelMessage); }
/// <summary> /// Gets the editor. /// </summary> /// <param name="PlaceHolderHTMLEditor">The place holder HTML editor.</param> /// <param name="moduleID">The module ID.</param> /// <param name="showUpload">if set to <c>true</c> [show upload].</param> /// <param name="portalSettings">The portal settings.</param> /// <returns></returns> public IHtmlEditor GetEditor(Control PlaceHolderHTMLEditor, int moduleID, bool showUpload, PortalSettings portalSettings) { IHtmlEditor DesktopText; string moduleImageFolder = ModuleSettings.GetModuleSettings(moduleID)["MODULE_IMAGE_FOLDER"].ToString(); // Grabs ID from the place holder so that a unique editor is on the page if more than one // But keeps same ID so that the information can be submitted to be saved. [CDT] string uniqueID = PlaceHolderHTMLEditor.ID; switch (Value) { case "FCKEditor V2": // [email protected] 2004/11/09. FCKTextBoxV2 fckv2 = new FCKTextBoxV2(); fckv2.ImageFolder = moduleImageFolder; fckv2.BasePath = Path.WebPathCombine(Path.ApplicationRoot, "aspnet_client/FCKEditorV2/"); fckv2.AutoDetectLanguage = false; fckv2.DefaultLanguage = portalSettings.PortalUILanguage.Name.Substring(0, 2); // fckv2.EditorAreaCSS = portalSettings.GetCurrentTheme().CssFile; fckv2.ID = string.Concat("FCKTextBox", uniqueID); string conector = Path.ApplicationRootPath("/app_support/FCKconnectorV2.aspx"); fckv2.ImageBrowserURL = Path.WebPathCombine(Path.ApplicationRoot, "aspnet_client/FCKEditorV2/editor/filemanager/browser.html?Type=Image&Connector=" + conector); fckv2.LinkBrowserURL = Path.WebPathCombine(Path.ApplicationRoot, "aspnet_client/FCKEditorV2/editor/filemanager/browser.html?Connector=" + conector); DesktopText = ((IHtmlEditor)fckv2); break; case "FreeTextBox": FreeTextBox freeText = new FreeTextBox(); freeText.ToolbarLayout = "ParagraphMenu,FontFacesMenu,FontSizesMenu,FontForeColorPicker,FontBackColorPicker,FontForeColorsMenu|Bold,Italic,Underline,Strikethrough;Superscript,Subscript,RemoveFormat;CreateLink,Unlink|JustifyLeft,JustifyRight,JustifyCenter,JustifyFull;BulletedList,NumberedList,Indent,Outdent;InsertRule|Delete,Cut,Copy,Paste;Undo,Redo,Print;InsertTable,InsertTableColumnAfter,InsertTableColumnBefore,InsertTableRowAfter,InsertTableRowBefore,DeleteTableColumn,DeleteTableRow,InsertImageFromGallery"; freeText.ImageGalleryUrl = Path.WebPathCombine(Path.ApplicationFullPath, "app_support/ftb.imagegallery.aspx?rif={0}&cif={0}&mID=" + moduleID.ToString()); freeText.ImageFolder = moduleImageFolder; freeText.ImageGalleryPath = Path.WebPathCombine(portalSettings.PortalFullPath, freeText.ImageFolder); freeText.ID = string.Concat("FreeText", uniqueID); freeText.Language = getFtbLanguage(portalSettings.PortalUILanguage.Name); DesktopText = ((IHtmlEditor)freeText); break; case "ActiveUp HtmlTextBox": HtmlTextBox h = new HtmlTextBox(); h.ImageFolder = moduleImageFolder; DesktopText = (IHtmlEditor)h; // Allow content editors to see the content with the same style that it is displayed in h.ContentCssFile = portalSettings.GetCurrentTheme().CssFile; // Custom Properties must come after control is added to placeholder h.EnsureToolsCreated(); // Set the icons folder h.IconsDir = Path.WebPathCombine(Path.ApplicationRoot, "aspnet_client/ActiveUp/icons/"); // Add the Help icon StringBuilder sbHelp = new StringBuilder(); sbHelp.Append("var Help=window.open('"); sbHelp.Append(Path.ApplicationRoot); sbHelp.Append("/aspnet_client/ActiveUp/"); sbHelp.Append( "htmltextbox_help.html', 'HTML_TextBox_Help', 'height=520, width=520, resizable=yes, scrollbars=yes, menubar=no, toolbar=no, directories=no, location=no, status=no');Help.moveTo('20', '20');"); Custom openPage = new Custom(); openPage.IconOff = "help_off.gif"; openPage.IconOver = "help_off.gif"; openPage.ClientSideOnClick = sbHelp.ToString(); h.Toolbars[0].Tools.Add(openPage); // Add the image library Image imageLibrary = (Image)h.Toolbars[0].Tools["Image"]; imageLibrary.AutoLoad = true; // Clear the directories collection because it is stored in ViewState and must be cleared or upload will result in display of multiple directories of the same name imageLibrary.Directories.Clear(); imageLibrary.Directories.Add("images", HttpContext.Current.Server.MapPath(portalSettings.PortalFullPath + h.ImageFolder), portalSettings.PortalFullPath + h.ImageFolder + "/"); if (!showUpload) { imageLibrary.UploadDisabled = true; } break; case "Plain Text": default: DesktopText = (new TextEditor()); break; } PlaceHolderHTMLEditor.Controls.Add(((Control)DesktopText)); return(DesktopText); }