Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Перехват ошибок, хочется перехватить ошибку если  
:(
    Опции темы
Antila
Дата 17.3.2008, 20:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 28.11.2007

Репутация: нет
Всего: нет



Есть вот такая процедура:
 private void button1_Click(object sender, EventArgs e)
{
long M;
M = Convert.ToInt64(textBox1.Text);
}

Возникает ошибка если пользователь в textBox1.Text вводит не число а буквы, или в процедуре например возникает ошибка переполнения или ещё какая-нибудь.
Хочется перехватить эту ошику, вывести сообщение, и завершить процедуру.
Подскажите, как это можно реализовать...

private void button1_Click(object sender, EventArgs e)
{
Если возникла ошибка(переполнение, некорректные данные или т.д.),
то "Сообщение пользователю"
иначе
{long M;
M = Convert.ToInt64(textBox1.Text);}
}

PM MAIL   Вверх
vponomarov
Дата 17.3.2008, 22:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 407
Регистрация: 11.8.2007
Где: Киев

Репутация: 4
Всего: 12



чтобы особо не париться, пишем так:
Код

 private void button1_Click(object sender, EventArgs e)
{
try
{
long M;
M = Convert.ToInt64(textBox1.Text);
}
catch(Exception excp)
{
    MessageBox.Show("Введены некоректные данные: "+excp.Message);
}
}

ну или как советует Microsoft, можно ловить спецефические типы ошибок (ошибка переполнения, ошибка приобразования и т.д.) и обрабатывать каждую по-разному.
хотя лично я считаю, что в данном случае это лишнее smile 


--------------------
user posted image
user posted image
PM MAIL ICQ   Вверх
Antila
Дата 18.3.2008, 01:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 28.11.2007

Репутация: нет
Всего: нет



Спасибо vponomarov, работает!  smile 
PM MAIL   Вверх
vponomarov
Дата 18.3.2008, 10:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 407
Регистрация: 11.8.2007
Где: Киев

Репутация: 4
Всего: 12



Antila, а чего ж ему не работать? smile 


--------------------
user posted image
user posted image
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0706 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.