Estoy recién comenzando en la programación orientada a objetos, y decidí crear un programa que multiplica dos textbox. Mi programa es imperfecto, y pensando en el futuro, ¿Qué lineas adicionales de código debo agregar de tal manera que en el textbox 1 y textbox 2 no se puedan ingresar números menores o iguales a 7? El if es una alternativa, pero en los programas en consola, para estos casos usaba el while. Y lamentablemente no soy capaz de implementar el while en un programa orientado a objetos. (Ver segundo Code)
Código:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace Multiplicación { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void textBox3_TextChanged(object sender, EventArgs e) { } private void button1_Click(object sender, EventArgs e) { int primernumero; int segundonumero; int resultado; try { primernumero = int.Parse(textBox1.Text); segundonumero = int.Parse(textBox2.Text); if ((segundonumero <= 7) || (primernumero <= 7)) { MessageBox.Show("Ingrese un número mayor que siete", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); textBox1.Clear(); textBox2.Clear(); } resultado = primernumero * segundonumero; textBox3.Text = resultado.ToString(); } catch (FormatException) { MessageBox.Show("Ingrese sólo números", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } }
Usando el while (Mensaje infinito de error)
Código:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace Multiplicación { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void textBox3_TextChanged(object sender, EventArgs e) { } private void button1_Click(object sender, EventArgs e) { int primernumero; int segundonumero; int resultado; try { primernumero = int.Parse(textBox1.Text); segundonumero = int.Parse(textBox2.Text); while ((segundonumero <= 7) || (primernumero <= 7)) { segundonumero = int.Parse(textBox1.Text); MessageBox.Show("Ingrese un número mayor que 7", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } resultado = primernumero * segundonumero; textBox3.Text = resultado.ToString(); } catch (FormatException) { MessageBox.Show("Ingrese sólo números mayores a 7", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } }