CLR: .Net / Mono / Boo / Otros CLR > C#

 Problematica Coma Y Punto

(1/2) > >>

syva:
Tengo unos textboxes que hacen cálculos, como es en español se utiliza la coma como separador de decimales, pero si alguien pone punto por ejemplo 0.5 es como si hubiese puesto 5.
¿Qué hago para mostrar una pantalla de error?¿O que se transforme en coma?

Amilius:
Eso corresponde al usuario en Configuración Regional. Lo mejor es detertar la configuración al inicio y avisar si algo no va como se desea.

Güorker:
Hola,

¿Has probado con la propiedad format que tienen los TextBox? Creo que con esa propiedad puedes establecer el formato de los números y el separador de decimales.

Saludos

syva:
Estoy probando con esto:

private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
      {
         if ( e.KeyChar == ( char ) 46)
         {
             textBox1.Text = string.Format(textBox1.Text, textBox1.TextLength -1) + ",";
         }
      }

pero no acaba de salir, coloca la coma pero también acaba colocando el punto al inicio de la casilla.

Güorker:
Hola de nuevo,

¿Que tal si intentas cambiar el valor ASCII de la tecla pulsada? Es decir, si el usuario ha pulsado '.' tu lo cambias por ','.


--- Código: Text ---  if ( e.KeyChar == ( char ) 46) {   e.KeyChar = (char)44;}  
No se si funcionará, pero por intentarlo...

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa