Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / проверка число или символ? / 7 сообщений из 7, страница 1 из 1
01.12.2004, 17:13
    #32808116
chess
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проверка число или символ?
Добрый день!
Подскажите, как лучше осушествить проверку введенно бользователем строки.
Т.е. есть строка ввода, в которую требуется ввести, к примеру, ваш рост. А пользователь ошибся, и в место цифр, например 178, ввел 17B.
...
Рейтинг: 0 / 0
01.12.2004, 17:20
    #32808140
profil
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проверка число или символ?
можно использовать регулярные выражения
System.Text.RegularExpressions Regex rxNumber = new Regex(@"^\d+$");
...
Рейтинг: 0 / 0
01.12.2004, 17:54
    #32808233
кузя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проверка число или символ?
можно попробовать и Double.TryParse(..);
...
Рейтинг: 0 / 0
01.12.2004, 18:01
    #32808251
Misha 'Karn' Ivanov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проверка число или символ?
public bool IsNumeric(string val)
{
try
{
Convert.ToInt32(val)
return true;
}
catch(FormatException ex)
{
return false;
}
}
...
Рейтинг: 0 / 0
01.12.2004, 18:09
    #32808274
hDrummer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проверка число или символ?
Misha 'Karn' Ivanovpublic bool IsNumeric(string val)
{
try
{
Convert.ToInt32(val)
return true;
}
catch(FormatException ex)
{
return false;
}
}

Вообще-то блоки try-catch не рекомендуется использовать для проверки чего-либо.
Дороговато выходит.
...
Рейтинг: 0 / 0
01.12.2004, 20:07
    #32808441
taj
taj
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проверка число или символ?
hDrummerВообще-то блоки try-catch не рекомендуется использовать для проверки чего-либо.
Дороговато выходит.Поддерживаю - именно поэтому кузя посоветовал TryParse, который не кидает exception.

--
Wo siang nide fanvan li ty le tang!(кит.:Я плюнул вам в рис, теперь вы умрёте!)
подпись сперта у перца с другого форума, но все равно красиво
...
Рейтинг: 0 / 0
01.12.2004, 21:39
    #32808495
кузя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проверка число или символ?
2 chess

можно использовать DataBindind свойства объекта (например, самой формы) и значения свойства TextBox.Text

при инициализации формы
Код: plaintext
this.textBox1.DataBindings.Add("Text", this, "Prop");

примерно такой код можно использовать для "связанного" свойства Prop объекта (формы)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
private int _Prop=0; // поле, содержащее значение
// событие, на которое подпишется Binding для отслеживания 
// изменений свойства (при его программном изменении, например, this.Prop=8;)
// имя события должно быть строго в формате: <имя_свойства>Changed
public event EventHandler PropChanged;
// само свойство объекта
public	int Prop
{ get{return(_Prop);}
  set
  { if(value>=0 && value<100) // проверка на допустимое значение
    { 
      _Prop=value; 
    }
    else
    {
      // что-то делаем, чтобы пользователь увидел ошибку
      // например, через ErrorProvider (или MessageBox)
      // [но можно не делать ни хрена... просто оставить прежнее значение]
    }
    // вызываем обработчики событий по изменению значения свойства
    if(PropChanged!=null) PropChanged(this, new EventArgs());
  }
}
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / проверка число или символ? / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]