/// <summary>
        /// Validates the time and returns the time. The value is expressed in time since 12AM on an arbitrary day.
        /// </summary>
        public TimeSpan ValidateAndGetTimeSpan( PostBackValueDictionary postBackValues, Validator validator, ValidationErrorHandler errorHandler )
        {
            if( textBox != null ) {
                return validator.GetTimeOfDayTimeSpan(
                    errorHandler,
                    textBox.GetPostBackValue( postBackValues ).ToUpper(),
                    DateTimeTools.HourAndMinuteFormat.ToSingleElementArray() );
            }

            var selectedItemIdInPostBack = selectList.ValidateAndGetSelectedItemIdInPostBack( postBackValues, validator );
            if( selectedItemIdInPostBack.HasValue )
                return selectedItemIdInPostBack.Value;
            errorHandler.SetValidationResult( ValidationResult.Empty() );
            errorHandler.HandleResult( validator, true );
            return default( TimeSpan );
        }