C sharp - Cambio de punto por coma en textbox

 
Vista:
sin imagen de perfil

Cambio de punto por coma en textbox

Publicado por PabloX (7 intervenciones) el 18/03/2008 18:26:47
Hola, antes que todo gracias. bueno les comento que soy nuevo en c# y estoy armando una aplicacion de escritorio, el problema que tengo es que necesito que un textbox me cambie el punto por una coma, digos q cuando yo presione el punto del teclado numerico aparesca una coma, eh buscado por toda la red y lo unico q eh encontrado es lo siguiente:

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar.ToString() == ".")
{
e.Handled = true;
this.textBox1.Text += ",";
SendKeys.Send("{END}");
}
}

ó

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar.ToString() == ".")
{
e.Handled = true;
this.textBox1.Text += ",";
SendKeys.Send(",");
}
}

pero no me funciona...

que puedo hacer?, existe alguna forma de hacer lo que pido?

Muchisimas gracias!
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

RE:Cambio de punto por coma en textbox

Publicado por Isidro Moreno (5 intervenciones) el 18/03/2008 19:32:45
Hola pabloX he revisado lo que has puesto y la sig funcion que has enumerado funciona correctamente:
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar.ToString() == ".")
{
e.Handled = true;
this.textBox1.Text += ",";
SendKeys.Send("{END}");
}
}
el detalle es que no le estas agregando a tu textbox elevento de KeyPres. talvez solo estes agregando este segmento de codigo lo ke tienes que ahcer es seleccionar tu TextBox e irte ala ventanita de propiedades de VS2005 posteriormente dar clic en el iconito ques como un "rayo" buscar el evento keyPress das doble click y te manda a tu codigo donde ya puedes pegar este parte de codigo..
espero haberte ayudado Saludos!
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

RE:Cambio de punto por coma en textbox

Publicado por Cynthia (5 intervenciones) el 18/03/2008 21:19:24
Hola...este método es un poquito primitivo pero como para empezar está bien...espero te sirva....

public static void soloDecimales(TextBox t, KeyPressEventArgs e)
{
//.=46, 0=48,9=57,,=44
int i = e.KeyChar;
if (i == 44)
e.KeyChar = '.';
if (i == 46)
{
String punto = t.Text;
if (punto.IndexOf('.') > 0)
{
e.KeyChar = '';
return;
}
}
if (!((i >= 48 && i <= 57) || (e.KeyChar.CompareTo(' ') == 0)
|| i == 8 || i == 46))
{
e.KeyChar = '';
return;
}
}
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

RE:Cambio de punto por coma en textbox

Publicado por PabloX (7 intervenciones) el 18/03/2008 22:32:18
Isidro gracias!!! tenias razon yo estaba haciendo el codigo pero no lo ponia desde el rayito!! muchas gracias!!!! gracias capo!!!

me salvaste la vida!!! este problema ya me tenia mall! gracias gracias y mil gracias!!!

me recorri toda la red en busca de esta solucion!! gracias!!!
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

RE:Cambio de punto por coma en textbox

Publicado por Cynthia (5 intervenciones) el 18/03/2008 21:27:32
Hola...este método es un poquito primitivo pero como para empezar está bien...espero te sirva....

public static void soloDecimales(TextBox t, KeyPressEventArgs e)
{
//.=46, 0=48,9=57,,=44
int i = e.KeyChar;
if (i == 44)
e.KeyChar = '.';
if (i == 46)
{
String punto = t.Text;
if (punto.IndexOf('.') > 0)
{
e.KeyChar = '';
return;
}
}
if (!((i >= 48 && i <= 57) || (e.KeyChar.CompareTo(' ') == 0)
|| i == 8 || i == 46))
{
e.KeyChar = '';
return;
}
}
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