Я сделал табло, где пользователь вводит максимально допустимое количество очков в текстовом поле1. У меня есть две кнопки. Левый увеличивает значение на левой стороне метки, а правый увеличивает значение на правой стороне метки. Как только одна сторона набирает максимальное количество очков, я объявляю победителя с помощью MessageBox.
Я хочу знать, как проверить, не вводил ли пользователь целое число в текстовое поле. Я уже поставил условие, чтобы оно было больше 0.
Это то, что у меня есть: ИЗОБРАЖЕНИЕ С ИСПОЛЬЗОВАНИЕМ
public void winner()
{
int max = Convert.ToInt32(textBox1.Text);
if (max <= 0 || //this is where i want to check if its an integer)
{
MessageBox.Show("Press RESET and use a value greater than 0");
btn_left.Enabled = false;
btn_right.Enabled = false;
textBox1.ResetText();
}
else if (left == max)
{
MessageBox.Show("Winner: Left Player");
textBox1.Enabled = false;
btn_left.Enabled = false;
btn_right.Enabled = false;
}
else if (right == max)
{
MessageBox.Show("Winner: Right Player");
textBox1.Enabled = false;
btn_left.Enabled = false;
btn_right.Enabled = false;
}
}
private void btn_left_Click(object sender, EventArgs e)
{
left = left + 1;
lbl_score.Text = left.ToString() + " - " + right.ToString();
winner();
}
private void btn_right_Click(object sender, EventArgs e)
{
right = right + 1;
lbl_score.Text = left.ToString() + " - " + right.ToString();
winner();
}
private void btn_reset_Click(object sender, EventArgs e)
{
textBox1.Enabled = true;
textBox1.Text = "0";
btn_left.Enabled = true;
btn_left.Enabled = true;
left = 0;
right = 0;
lbl_score.Text = left.ToString() + " - " + right.ToString();
}
Редактировать: я проверил другое решение, предложенное в комментариях, но ни один из ответов там, кажется, не работает для меня, кроме того, который я выбрал в этой теме