Вы должны использовать RegularExpressionValidator для этого.RangeValidators не для длины строки.Установите для выражения ValidationExpression что-то вроде .?
, или вы можете сузить его до чего-то вроде \S?
или \w?
или чего-то еще, если хотите.
Кроме того, если вы работаете с TextBox, который не находится в режиме MultiLine (и нет никаких причин, по которому это может быть, если максимум равен одному символу), вы можете просто установить MaxLength="1"
на элементе управления, и вы выиграли 'валидатор вообще не нужен.
РЕДАКТИРОВАТЬ: Если вы хотите указать максимальную длину больше, чем один в многострочном TextBox, вы можете использовать RegularExpressionValidator, как описано выше, но установить ValidationExpression=".{0,100}"
для максимальной длины 100. Дополнительная информация о квантификаторах регулярных выражений доступна здесь .
Если у вас однострочный TextBox, просто установите его атрибут MaxLength на желаемый максимум, иэто не позволит ничего дольше этого;валидатор не требуется.
Если вы хотите сделать что-либо, включающее определение длины в реальном времени по мере того, как пользователь вводит ее, это более сложно, и вам потребуется JavaScript.Вы также должны все еще проверять ввод на стороне сервера, потому что любой пользователь с отключенным JavaScript сможет обойти проверку на стороне клиента.