C# i wyjątki :|

0

Witam,
część kodu poniżej wyklucza wpisanie do textboxa liczb ujemnych......i teraz problem tkwi w tym aby jeszcze dodatkowo nie można było wpisywac liter :| czyli tylko liczby naturalne... 8-O Jak to zrobic? co dopisac?

int a;
	a = Convert.ToInt32(textBox3.Text);//zamiana string na int;
	if (a < 0)
	{MessageBox.Show("A-coder must be natural number");}
0
krisss napisał(a)

Witam,
część kodu poniżej wyklucza wpisanie do textboxa liczb ujemnych......i teraz problem tkwi w tym aby jeszcze dodatkowo nie można było wpisywac liter :| czyli tylko liczby naturalne... 8-O Jak to zrobic? co dopisac?

int a;
	a = Convert.ToInt32(textBox3.Text);//zamiana string na int;
	if (a < 0)
	{MessageBox.Show("A-coder must be natural number");}

W przypadku takiej konwersji i wpisania liter wystapi wyjatek - wiec zlap ten wyjatek i tyle.

pozdrawiam
johny

0

Tylko jak to sie robi ? TRY...CATCH? bo jeżlei tak to ja nie bardzo wiem jak sie tego używa :)

0

spoko pytanei nieaktualne bo zrobilem :) thx

0
krisss napisał(a)

Tylko jak to sie robi ? TRY...CATCH? bo jeżlei tak to ja nie bardzo wiem jak sie tego używa :)

Mozesz zrobic tak:

try{
int a;
        a = Convert.ToInt32(textBox3.Text);//zamiana string na int;
        if (a < 0)
        {MessageBox.Show("A-coder must be natural number");}
}catch(FormatException e)
{
  MessageBox.Show("A-coder must be a number");
}

Bardziej elegancko i skladniej byloby uzyc wyrazen regularnych, ale tak jest latwiej, jesli chcesz.

pozdrawiam
johny

1 użytkowników online, w tym zalogowanych: 0, gości: 1