Редактировать
Что ж, это намного проще ... Просто добавьте обработчик событий Validating
в текстовое поле.
и сделайте TryParse
в коде позади. Если он недействителен, подскажите пользователю как таковой.
Проверка завершится, когда пользователь закончит печатать и переместит фокус из TextBox, поэтому, если вам нужно выполнить проверку на лету, вы можете вместо этого обработать TextChanged или включить обработчики событий KeyPress / KeyUp
Оригинал
Это в asp.net или winforms / wpf
Если это asp.net, вы можете использовать комбинацию RegularExpressionValidator
(для учета разделения через запятую, 1 десятичной точки и т. Д.) И RangeValidator
для установки значений min / max для числа с плавающей запятой.
Кроме того, единственный способ гарантировать, что это будет заключить текстовое поле в панель обновления, прикрепить к нему CustomServerValidator и в функции проверки сервера, сделать TryParse
для значения TextBox.Text
, если оно успешно, ДЕЙСТВИТЕЛЬНО, если не получилось, НЕ ДЕЙСТВИТЕЛЬНО