예제 #1
0
        public override void Check(ValidityState state)
        {
            var value = Input.Value;
            var date = ConvertFromTime(value);

            if (date.HasValue)
            {
                var min = ConvertFromTime(Input.Minimum);
                var max = ConvertFromTime(Input.Maximum);

                state.IsRangeUnderflow = min.HasValue && date < min.Value;
                state.IsRangeOverflow = max.HasValue && date > max.Value;
                state.IsValueMissing = false;
                state.IsBadInput = false;
                state.IsStepMismatch = IsStepMismatch();
            }
            else
            {
                state.IsRangeUnderflow = false;
                state.IsRangeOverflow = false;
                state.IsStepMismatch = false;
                state.IsValueMissing = Input.IsRequired;
                state.IsBadInput = !String.IsNullOrEmpty(value);
            }
        }
예제 #2
0
        public override void Check(ValidityState state)
        {
            var value = Input.Value ?? String.Empty;
            state.IsPatternMismatch = IsInvalidPattern(Input.Pattern, value);

            if (IsInvalidUrl(value))
            {
                state.IsTypeMismatch = !String.IsNullOrEmpty(value);
                state.IsBadInput = state.IsTypeMismatch;
            }
        }
예제 #3
0
        public override void Check(ValidityState state)
        {
            var value = Input.Value;
            var num = ConvertToNumber(value);
            state.Reset();

            if (num.HasValue)
            {
                var min = ConvertToNumber(Input.Minimum);
                var max = ConvertToNumber(Input.Maximum);

                state.IsRangeUnderflow = min.HasValue && num < min.Value;
                state.IsRangeOverflow = max.HasValue && num > max.Value;
                state.IsValueMissing = false;
                state.IsStepMismatch = IsStepMismatch();
            }
            else
            {
                state.IsRangeUnderflow = false;
                state.IsRangeOverflow = false;
                state.IsValueMissing = Input.IsRequired;
                state.IsStepMismatch = false;
            }
        }
예제 #4
0
 protected override void Check(ValidityState state)
 {
     base.Check(state);
     _type.Check(state);
 }
예제 #5
0
 public virtual void Check(ValidityState state)
 {
 }
예제 #6
0
 public override void Check(ValidityState state)
 {
     state.IsValueMissing = Input.IsRequired && !Input.IsChecked;
 }
예제 #7
0
        /// <summary>
        /// Checks the form control for validity.
        /// </summary>
        /// <param name="state">The element's validity state tracker.</param>
        protected override void Check(ValidityState state)
        {
            var value = Value;

            state.IsValueMissing = IsRequired && String.IsNullOrEmpty(value);
        }
예제 #8
0
 public HtmlFormControlElement(Document owner, String name, NodeFlags flags = NodeFlags.None)
     : base(owner, name, flags | NodeFlags.Special)
 {
     _vstate = new ValidityState();
     _labels = new NodeList();
 }
예제 #9
0
 /// <summary>
 /// Checks the form control for validity.
 /// </summary>
 /// <param name="state">The element's validity state tracker.</param>
 protected virtual void Check(ValidityState state)
 {
 }
 /// <summary>
 /// Checks the form control for validity.
 /// </summary>
 /// <param name="state">The element's validity state tracker.</param>
 protected override void Check(ValidityState state)
 {
     var value = Value ?? String.Empty;
     var length = value.Length;
     var maxlength = MaxLength;
     var minlength = MinLength;
     state.IsValueMissing = IsRequired && length == 0;
     state.IsTooLong = _dirty && maxlength > -1 && length > maxlength;
     state.IsTooShort = _dirty && length > 0 && length < minlength;
 }
예제 #11
0
 public override void Check(ValidityState state)
 {
     var value = Input.Value ?? String.Empty;
     state.IsBadInput = color.IsMatch(value) == false;
     state.IsValueMissing = Input.IsRequired && state.IsBadInput;
 }
예제 #12
0
 public HtmlFormControlElement(Document owner, String name, String prefix, NodeFlags flags = NodeFlags.None)
     : base(owner, name, prefix, flags | NodeFlags.Special)
 {
     _vstate = new ValidityState();
     _labels = new NodeList();
 }
예제 #13
0
 protected virtual void Check(ValidityState state)
 { }
예제 #14
0
 protected override void Check(ValidityState state)
 {
     base.Check(state);
     _type.Check(state);
 }
예제 #15
0
 /// <summary>
 /// Checks the form control for validity.
 /// </summary>
 /// <param name="state">The element's validity state tracker.</param>
 protected override void Check(ValidityState state)
 {
     var value = Value;
     state.IsValueMissing = IsRequired && String.IsNullOrEmpty(value);
 }
예제 #16
0
 public override void Check(ValidityState state)
 {
     var value = Input.Value ?? String.Empty;
     state.IsPatternMismatch = IsInvalidPattern(Input.Pattern, value);
 }