Вы звоните Convert.ToInt32(bool)
, который даст только 0 или 1.
Я думаю, вы имели в виду:
int TextBox1INT2, TextBox2Int2;
bool textBox1Valid = int.TryParse(textBox2.Text, out TextBox1INT2);
bool textBox2Valid = int.TryParse(textBox1.Text, out TextBox2INT2);
Вы также должны предпринять действия, если int.TryParse
вернет false - например, попросив пользователя ввести действительное число, вместо того, чтобы в любом случае выполнять вычисления. Я бы также изменил ваши имена переменных, чтобы вы имели что-то вроде:
int parsedTextBox1, parsedTextBox2;
bool textBox1Valid = int.TryParse(textBox2.Text, out parsedTextBox1);
bool textBox2Valid = int.TryParse(textBox1.Text, out parsedTextBox2);
if (!textBox1Valid || !textBox2Valid)
{
// Do something to warn the user here, e.g. a message box
return;
}
double result = (parsedTextBox1 * 0.0333m * parsedTextBox2) + parsedTextBox1;
textBoxFind.Text = ((int) Math.Round(result)).ToString();