0
public sealed class IntegerBox : TextBox
{
#region constants
private const string RangeConstraintValidatorID = "rangeConstraintValidator";
#endregion
#region child controls
private readonly CustomValidator _rangeConstraintValidator = new CustomValidator
{
EnableClientScript = false,
Enabled = true,
ErrorMessage = "ErrorMessageForRangeConstraintFailed",
Display = ValidatorDisplay.None,
SetFocusOnError = true,
ValidateEmptyText = true
};
#endregion
#region life cycle
protected override void CreateChildControls()
{
this.Controls.Clear();
this._rangeConstraintValidator.ID = this.ClientID + this.ClientIDSeparator + RangeConstraintValidatorID;
this._rangeConstraintValidator.ServerValidate += this.ValidateRangeConstraint;
this.Controls.Add(this._rangeConstraintValidator);
base.CreateChildControls();
}
#endregion
/// <summary>
/// Gets or sets the number.
/// </summary>
/// <value>The number.</value>
public int? Number
{
get
{
/* MAGIC */
}
set
{
/* MAGIC */
}
}
public override string ValidationGroup
{
get
{
this.EnsureChildControls();
return base.ValidationGroup;
}
set
{
this.EnsureChildControls();
base.ValidationGroup = value;
this._rangeConstraintValidator.ValidationGroup = value;
}
}
public int? MaximumValue { get; set; }
public int? MinimumValue { get; set; }
public string ErrorMessageForRangeConstraintFailed
{
get
{
this.EnsureChildControls();
return this._rangeConstraintValidator.ErrorMessage;
}
set
{
this.EnsureChildControls();
this._rangeConstraintValidator.ErrorMessage = value;
}
}
public void ValidateRangeConstraint(object source, ServerValidateEventArgs args)
{
/* MAGIC */
}
#endregion
}
아무에게도 왜 이것이 작동하지 않는지 말할 수 있습니까?
노트 :이 CustomValidator가 실행되지 않는 이유는 무엇입니까?
- 은 이미을 CreateChildControls의 = 내부에 영향을 rangeConstraint-검사기를 실체화하지하려고했습니다!
protected override void OnLoad(System.EventArgs e) { base.OnLoad(e); this.EnsureChildControls(); }
이유 :
- 검증하는 방법은 내가 더 validationGroup