public TagBuilder AppendElement(TextArea formProperty, string existingValue, FormRenderingType formRenderingType) { var tagBuilder = new TagBuilder("textarea"); tagBuilder.Attributes["name"] = formProperty.Name; tagBuilder.Attributes["id"] = formProperty.GetHtmlId(); if (formProperty.Required) { tagBuilder.Attributes["data-val"] = "true"; tagBuilder.Attributes["data-val-required"] = string.Format("The field {0} is required", string.IsNullOrWhiteSpace(formProperty.LabelText) ? formProperty.Name : formProperty.LabelText); } if (!string.IsNullOrWhiteSpace(formProperty.CssClass)) { tagBuilder.AddCssClass(formProperty.CssClass); } if (formRenderingType == FormRenderingType.Bootstrap3) { tagBuilder.AddCssClass("form-control"); } tagBuilder.InnerHtml = existingValue; return(tagBuilder); }
public virtual List <SelectListItem> GetFormRendererOptions(FormRenderingType defaultFormRendererType) { return(Enum.GetValues(typeof(FormRenderingType)).Cast <FormRenderingType>() .BuildSelectItemList(type => type.ToString().BreakUpString(), type => type.ToString(), type => type == defaultFormRendererType, emptyItem: null)); }
public virtual List<SelectListItem> GetFormRendererOptions(FormRenderingType defaultFormRendererType) { return Enum.GetValues(typeof (FormRenderingType)).Cast<FormRenderingType>() .BuildSelectItemList(type => type.ToString().BreakUpString(), type => type.ToString(), type => type == defaultFormRendererType, emptyItem: null); }
public TagBuilder GetElementContainer(FormRenderingType formRendererType, FormProperty property) { if (formRendererType == FormRenderingType.Bootstrap3) { if (property is TextBox || property is TextArea || property is DropDownList || property is FileUpload) { TagBuilder elementContainer = new TagBuilder("div"); elementContainer.AddCssClass("form-group"); return(elementContainer); } } return(null); }
public TagBuilder AppendElement(FormProperty formProperty, string existingValue, FormRenderingType formRenderingType) { return(AppendElement(formProperty as TextArea, existingValue, formRenderingType)); }
public TagBuilder AppendElement(DropDownList formProperty, string existingValue, FormRenderingType formRenderingType) { TagBuilder tagBuilder = new TagBuilder("select"); tagBuilder.Attributes["name"] = formProperty.Name; tagBuilder.Attributes["id"] = formProperty.GetHtmlId(); if (formProperty.Required) { tagBuilder.Attributes["data-val"] = "true"; tagBuilder.Attributes["data-val-required"] = string.Format("The field {0} is required", string.IsNullOrWhiteSpace(formProperty.LabelText) ? formProperty.Name : formProperty.LabelText); } if (!string.IsNullOrWhiteSpace(formProperty.CssClass)) { tagBuilder.AddCssClass(formProperty.CssClass); } if (formRenderingType == FormRenderingType.Bootstrap3) { tagBuilder.AddCssClass("form-control"); } foreach (FormListOption option in formProperty.Options) { tagBuilder.InnerHtml += _dropDownListOptionRenderer.GetOption(option, existingValue); } return(tagBuilder); }
public TagBuilder AppendElement(FormProperty formProperty, string existingValue, FormRenderingType formRenderingType) { return(AppendElement(formProperty as RadioButtonList, existingValue, formRenderingType)); }
public TagBuilder AppendElement(RadioButtonList formProperty, string existingValue, FormRenderingType formRenderingType) { var values = existingValue == null ? new List <string>() : existingValue.Split(new[] { "," }, StringSplitOptions.RemoveEmptyEntries) .Select(s => s.Trim()) .ToList(); var tagBuilder = new TagBuilder("div"); foreach (var checkbox in formProperty.Options) { var cbLabelBuilder = new TagBuilder("label"); cbLabelBuilder.Attributes["for"] = TagBuilder.CreateSanitizedId(formProperty.Name + "-" + checkbox.Value); cbLabelBuilder.InnerHtml = checkbox.Value; cbLabelBuilder.AddCssClass("radio"); var radioButtonBuilder = new TagBuilder("input"); radioButtonBuilder.Attributes["type"] = "radio"; radioButtonBuilder.Attributes["value"] = checkbox.Value; radioButtonBuilder.AddCssClass(formProperty.CssClass); if (existingValue != null) { if (values.Contains(checkbox.Value)) { radioButtonBuilder.Attributes["checked"] = "checked"; } } else if (checkbox.Selected) { radioButtonBuilder.Attributes["checked"] = "checked"; } if (formProperty.Required) { radioButtonBuilder.Attributes["data-val"] = "true"; radioButtonBuilder.Attributes["data-val-required"] = string.Format("The field {0} is required", string.IsNullOrWhiteSpace(formProperty.LabelText) ? formProperty.Name : formProperty.LabelText); } radioButtonBuilder.Attributes["name"] = formProperty.Name; radioButtonBuilder.Attributes["id"] = TagBuilder.CreateSanitizedId(formProperty.Name + "-" + checkbox.Value); cbLabelBuilder.InnerHtml += radioButtonBuilder.ToString(); if (formRenderingType == FormRenderingType.Bootstrap3) { var radioContainer = new TagBuilder("div"); radioContainer.AddCssClass("radio"); radioContainer.InnerHtml += cbLabelBuilder.ToString(); tagBuilder.InnerHtml += radioContainer; } else { tagBuilder.InnerHtml += cbLabelBuilder; } } return(tagBuilder); }
public TagBuilder AppendElement(CheckboxList formProperty, string existingValue, FormRenderingType formRenderingType) { var values = existingValue == null ? new List <string>() : existingValue.Split(new[] { "," }, StringSplitOptions.RemoveEmptyEntries) .Select(s => s.Trim()) .ToList(); values.Remove(CbHiddenValue); var tagBuilder = new TagBuilder("div"); foreach (var checkbox in formProperty.Options) { var cbLabelBuilder = new TagBuilder("label"); cbLabelBuilder.Attributes["for"] = TagBuilder.CreateSanitizedId(formProperty.Name + "-" + checkbox.Value); var checkboxBuilder = GetCheckbox(formProperty, existingValue, checkbox, values); cbLabelBuilder.InnerHtml += checkboxBuilder.ToString(); cbLabelBuilder.InnerHtml += checkbox.Value; if (formRenderingType == FormRenderingType.Bootstrap3) { var checkboxContainer = new TagBuilder("div"); checkboxContainer.AddCssClass("checkbox"); checkboxContainer.InnerHtml += cbLabelBuilder.ToString(); tagBuilder.InnerHtml += checkboxContainer; } else { tagBuilder.InnerHtml += cbLabelBuilder; } } var cbHiddenBuilder = new TagBuilder("input"); cbHiddenBuilder.Attributes["type"] = "hidden"; cbHiddenBuilder.Attributes["name"] = formProperty.Name; cbHiddenBuilder.Attributes["value"] = CbHiddenValue; tagBuilder.InnerHtml += cbHiddenBuilder.ToString(); return(tagBuilder); }
public TagBuilder AppendElement(FileUpload formProperty, string existingValue, FormRenderingType formRenderingType) { TagBuilder tagBuilder = new TagBuilder("input"); tagBuilder.Attributes["type"] = "file"; tagBuilder.Attributes["name"] = formProperty.Name; tagBuilder.Attributes["id"] = formProperty.GetHtmlId(); if (formProperty.Required) { tagBuilder.Attributes["data-val"] = "true"; tagBuilder.Attributes["data-val-required"] = string.Format("The field {0} is required", string.IsNullOrWhiteSpace(formProperty.LabelText) ? formProperty.Name : formProperty.LabelText); } return(tagBuilder); }