Visual CSharp .NET - Ayuda con Textbox en Windows Forms

 
Vista:
sin imagen de perfil
Val: 3
Ha aumentado su posición en 3 puestos en Visual CSharp .NET (en relación al último mes)
Gráfica de Visual CSharp .NET

Ayuda con Textbox en Windows Forms

Publicado por Beta (2 intervenciones) el 22/02/2019 10:17:02
Hola a todos!

Soy novado. Necesito ver si alguien me puede ayudar con lo siguiente:

Estoy trabajando en una aplicación de Windows Forms en C#.

Tengo 6 textbox en los que quiero restringir para que los únicos valores que se puedan ingresar en ellos sean el número cero o el número 1.

Me podrían orientar por favor?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Leonardo Daniel A.
Val: 13
Ha mantenido su posición en Visual CSharp .NET (en relación al último mes)
Gráfica de Visual CSharp .NET

Ayuda con Textbox en Windows Forms

Publicado por Leonardo Daniel A. (5 intervenciones) el 23/02/2019 01:19:18
San google.... me tarde 2 minutos


http://www.ajpdsoft.com/modules.php?name=Foros&file=viewtopic&t=1540


solo modifica el codigo para que obtengas el valor que capturo en una variable y agrega otra condicion en donde dice IsDigit preguntando si
tu variable donde metes el numero capturado es 1 o 0 regresas false como dice ahi
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 3
Ha aumentado su posición en 3 puestos en Visual CSharp .NET (en relación al último mes)
Gráfica de Visual CSharp .NET

Ayuda con Textbox en Windows Forms

Publicado por Beta (2 intervenciones) el 23/02/2019 21:03:15
Ya vi porqué tardaste 2 minutos en encontrarlo.

En realidad no es lo que ocupo, eso ya lo tengo.

Creo que no me di a entender bien. Lo único que ocupo hacer es restringir los 6 textbox para que los únicos valores que pueda ingresar el usuario, sea un número cero o un número uno.

De entrada, en los textbox ya tengo una validación para que el usuario únicamente pueda ingresar valores numéricos a 1 dígito, lo único que me falta por hacer es obligar al usuario a que solamente pueda ingresar unos y ceros.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Leonardo Daniel A.
Val: 13
Ha mantenido su posición en Visual CSharp .NET (en relación al último mes)
Gráfica de Visual CSharp .NET

Ayuda con Textbox en Windows Forms

Publicado por Leonardo Daniel A. (5 intervenciones) el 24/02/2019 02:49:13
ese codigo sirve, solo debes meter una variable donde guardes el valor capturado y meter el if si es 0 o 1

El asunto es que si quieres replicarlo en los 6, pues deberias crear un objeto padre y heredarlo.... o crear una funcion que reciba el e.KeyChar y te regrese si es numerico y 0 o 1... y cambias e.Handled segun si es true o false el resultado de la evaluacion del dato

y porque mejor no usas un Spinner y le pones valor minimo 0 y maximo 1 ????


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
private void txtCodigoFabricante_KeyPress(object sender,
          KeyPressEventArgs e)
  {
    //Para obligar a que sólo se introduzcan números  
    if (Char.IsDigit(e.KeyChar) )
    {
         // ****************   solo aceptar  0 y 1   ******************
         if  ( Int32.Parse(e.KeyChar) == 0 ||  Int32.Parse(e.KeyChar) == 1 )
         {
             e.Handled = false;
         }
    }
    else
      if (Char.IsControl(e.KeyChar)) //permitir teclas de control como retroceso 
      {
        e.Handled = false;
      }
      else
      {
        //el resto de teclas pulsadas se desactivan 
        e.Handled = true;
      }
  }
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de milton
Val: 2
Ha mantenido su posición en Visual CSharp .NET (en relación al último mes)
Gráfica de Visual CSharp .NET

Ayuda con Textbox en Windows Forms

Publicado por milton (2 intervenciones) el 19/03/2019 18:25:09
en una simple línea:
1
2
3
4
private void txtCodigoFabricante_KeyPress(object sender,   KeyPressEventArgs e)
{
   e.Handled = "01\b".Contains(e.KeyChar);
}

Contains compara la cadena con e.keychar, devuelve falso si el carácter digitado no se encuentra en la cadena.
0 el cero
1 el uno y
\b el backspace (\t tabulador, \b bacspace, etc.), puedes agregar todos los numeros o simbolos o letras que quieras

Saludos

puedes visitar mi canal ahi tengo tutoriales de c#

https://www.youtube.com/user/MiltonIzaguirreMoral
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar