You could use int.TryParse
. Which would return true
if the cast passes.
int TargetDefect;
int.TryParse(txtCustTargetDfect.Text, out TargetDefect);
int ActualDefect;
int.TryParse(txtCustActualDefect.Text, out ActualDefect);
A more safer implementation could be:
int TargetDefect;
int ActualDefect;
if(int.TryParse(txtCustTargetDfect.Text, out TargetDefect) && int.TryParse(txtCustActualDefect.Text, out ActualDefect))
{
decimal Per = ((decimal) ActualDefect/(decimal) TargetDefect)*100;
txtCustPercentageDefect.Text = Per.ToString();
}