protected override void OnPreRender(EventArgs e) { if (!string.IsNullOrEmpty(this.LabelResourceKey) || !string.IsNullOrEmpty(this.LabelText)) { this.lbl = Utilities.CreateLabel(this.LabelResourceKey, this.LabelText); this.Controls.Add(lbl); } if (this.IsRequired) { this.reqValidator = Utilities.CreateRequiredFieldValidator(this.ID, this.ValidationGroup); reqValidator.Style.Add("padding", "0px 5px"); this.Controls.Add(reqValidator); } if (!this.PropertiesLoaded) { if (this.ShowPopover) { Utilities.AddPopoverAttributes(this.ID, this.Attributes, this.PopoverDiraction, PopoverTriggers.Focus, this.PopoverTextResourceKey); } this.CssClass = string.Concat(this.CssClass, " ", "form-control"); this.Attributes.Add("aria-describedby", this.ID + "-addon"); this.PropertiesLoaded = true; } base.OnPreRender(e); }
protected override void OnPreRender(EventArgs e) { base.OnPreRender(e); if (!string.IsNullOrEmpty(this.LabelResourceKey) || !string.IsNullOrEmpty(this.LabelText)) { this.lbl = Utilities.CreateLabel(this.LabelResourceKey, this.LabelText); this.Controls.Add(lbl); } if (this.IsRequired) { this.reqValidator = string.IsNullOrEmpty(this.RequiredErrorMessage) ? Utilities.CreateRequiredFieldValidator(this.ID, this.ValidationGroup) : Utilities.CreateRequiredFieldValidator(this.ID, this.ValidationGroup, this.RequiredErrorMessage); this.Controls.Add(reqValidator); } if (!this.PropertiesLoaded) { if (this.ShowPopover) { Utilities.AddPopoverAttributes(this.ID, this.Attributes, this.PopoverDiraction, PopoverTriggers.Focus, this.PopoverTextResourceKey); } this.CssClass = string.Concat(this.CssClass, " ", this.ControlSize.ToString().ToLower()); this.PropertiesLoaded = true; } if (this.IncludeDefaultItem && !this.ContainsDefaultItem) { this.Items.Insert(0, new ListItem(Resources.Choose, "")); this.SelectedIndex = 0; } if (this.Disabled && this.Attributes["disabled"] == null) { this.Attributes.Add("disabled", "disabled"); } else if (!this.Disabled && this.Attributes["disabled"] != null) { this.Attributes.Remove("disabled"); } if (this.AddonType.HasValue && this.AddonType.Value == AddonTypes.RadioButton) { this.addonRadioButton.Checked = this.AddonChecked; } //this.ApplyOnPreRendarFeatures(); }
protected override void OnPreRender(EventArgs e) { if (!string.IsNullOrEmpty(this.LabelResourceKey) || !string.IsNullOrEmpty(this.LabelText)) { this.lbl = Utilities.CreateLabel(this.LabelResourceKey, this.LabelText); this.Controls.Add(lbl); } if (this.IsRequired) { this.reqValidator = Utilities.CreateRequiredFieldValidator(this.ID, this.ValidationGroup); this.Controls.Add(reqValidator); } if (!this.PropertiesLoaded) { this.PropertiesLoaded = true; } base.OnPreRender(e); }
protected override void OnPreRender(EventArgs e) { #region Label if (!string.IsNullOrEmpty(this.LabelResourceKey) || !string.IsNullOrEmpty(this.LabelText)) { this.lbl = Utilities.CreateLabel(this.LabelResourceKey, this.LabelText); this.Controls.Add(lbl); } #endregion #region Validations if (this.IsRequired) { this.reqValidator = Utilities.CreateRequiredFieldValidator(this.ID, this.ValidationGroup); this.Controls.Add(reqValidator); } if (this.DataType != TextBoxDataTypes.String) { string validationExpression = string.Empty; switch (this.DataType) { case TextBoxDataTypes.Email: validationExpression = @"\w+([-+.]\w+)*@\w+([-.]\w{2,3})+"; break; case TextBoxDataTypes.NationalID: validationExpression = "(2|3)[0-9][0-9][0-1][1-9][0-3][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]"; this.MaxLength = 14; break; case TextBoxDataTypes.Year: //validate that the year number is four numbers and starts with 2. validationExpression = @"2\d{3}"; this.MaxLength = 4; break; case TextBoxDataTypes.Username: validationExpression = "^[a-zA-Z0-9_]{4,40}$"; break; case TextBoxDataTypes.Alphapet: validationExpression = "^[\u0600-\u065F\u066A-\u06EF\u06FA-\u06FFa-zA-Z_أإءئؤآي]+[\u0600-\u065F\u066A-\u06EF\u06FA-\u06FFa-zA-Z-_أإءئؤآي]*$"; break; case TextBoxDataTypes.Int: case TextBoxDataTypes.Double: case TextBoxDataTypes.Mobile: case TextBoxDataTypes.Phone: validationExpression = "^\\d+$" + (this.DataType == TextBoxDataTypes.Double ? "|^-?\\d*\\.\\d+$" : ""); if (this.DataType == TextBoxDataTypes.Mobile) { validationExpression = "^01[0125]{1}[0-9]{7,11}"; this.MaxLength = 11; } else if (this.DataType == TextBoxDataTypes.Phone) { validationExpression = "[+-]?[0-9]{5,11}"; this.MaxLength = 11; } if (this.MaxLength == 0) { if (this.DataType == TextBoxDataTypes.Double) { this.MaxLength = 10; } else if (this.DataType == TextBoxDataTypes.Int) { this.MaxLength = 7; } } break; } this.regValidator = Utilities.CreateRegularExpressionValidator(this.ID, this.ValidationGroup, validationExpression, "InvalidValue"); this.Controls.Add(regValidator); } if (!string.IsNullOrEmpty(this.MinValue) && !string.IsNullOrEmpty(this.MaxValue)) { this.rngValidator = Utilities.CreateRangeValidator(this.ID, this.ValidationGroup, this.DataType == TextBoxDataTypes.Int ? ValidationDataType.Integer : ValidationDataType.Double, this.MinValue, this.MaxValue); this.Controls.Add(rngValidator); } else if (!string.IsNullOrEmpty(this.MinValue) && string.IsNullOrEmpty(this.MaxValue)) { this.cmprValidator = Utilities.CreateCompareValidator(this.ID, this.ValidationGroup, this.DataType == TextBoxDataTypes.Int ? ValidationDataType.Integer : ValidationDataType.Double, this.MinValue, ValidationCompareOperator.GreaterThanEqual, "CompareValidatorGreaterThanErrorMessage"); this.Controls.Add(cmprValidator); } else if (string.IsNullOrEmpty(this.MinValue) && !string.IsNullOrEmpty(this.MaxValue)) { this.cmprValidator = Utilities.CreateCompareValidator(this.ID, this.ValidationGroup, this.DataType == TextBoxDataTypes.Int ? ValidationDataType.Integer : ValidationDataType.Double, this.MaxValue, ValidationCompareOperator.LessThanEqual, "CompareValidatorLessThanErrorMessage"); this.Controls.Add(cmprValidator); } #endregion #region AutoCompelete if (this.IsAutoCombelete) { this.hdjson = new CHiddenField(); this.Controls.Add(hdjson); } #endregion #region Properties if (!this.PropertiesLoaded) { if (this.ShowPopover) { Utilities.AddPopoverAttributes(this.ID, this.Attributes, this.PopoverDiraction, PopoverTriggers.Focus, this.PopoverTextResourceKey); } if (this.IsAutoCombelete) { this.CssClass = string.Concat(this.CssClass, "auto"); } if (this.TextMode == TextBoxMode.MultiLine && this.MaxLength > 0) { this.Attributes.Add("maxlength", this.MaxLength.ToString()); } if (this.DataType != TextBoxDataTypes.String) { switch (this.DataType) { case TextBoxDataTypes.Double: this.Attributes.Add("data-type", this.DataType.ToString().ToLower()); break; case TextBoxDataTypes.Int: case TextBoxDataTypes.Mobile: case TextBoxDataTypes.Phone: case TextBoxDataTypes.NationalID: this.Attributes.Add("data-type", TextBoxDataTypes.Int.ToString().ToLower()); break; case TextBoxDataTypes.Year: this.Attributes.Add("data-type", TextBoxDataTypes.Int.ToString().ToLower()); if (this.DefaultData != TextBoxDefaultData.empty) { this.Text = DateTime.Now.Year.ToString(); } break; } } if (!string.IsNullOrEmpty(this.PlaceholderResourceKey)) { this.Attributes.Add("placeholder", Resources.ResourceManager.GetString(this.PlaceholderResourceKey)); } this.CssClass = string.Concat(this.CssClass, " ", this.ControlSize.ToString().ToLower()); if (this.ShowInAddon) { this.CssClass = string.Concat(this.CssClass, " form-control"); } this.PropertiesLoaded = true; } if (this.Disabled && this.Attributes["disabled"] == null) { this.Attributes.Add("disabled", "disabled"); } else if (!this.Disabled && this.Attributes["disabled"] != null) { this.Attributes.Remove("disabled"); } if (this.AddonType.HasValue && this.AddonType.Value == AddonTypes.RadioButton) { this.addonRadioButton.Checked = this.AddonChecked; } #endregion base.OnPreRender(e); }