Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Evandro Sousa

indicar onde o focus() deve ficar.

Recommended Posts

Pessoal, estou com um problema em colocar o foco no lado direito-->

Tenho a seguinte situação, o usuario digita o numeros e a virgula e o ponto serão acrescentados automaticamente.

Ex: 1,23 e qndo digita o 4, ele joga o 4 na frente do 1. Ficando 41,23. Essa virgula é colocada automaticamente, desta maneira:

 

 private void FormataMoeda(TextBox campo, int tammax, KeyEventArgs tecla, int casaDecimal)
 {

 //string vr = Limpar(campo.Text, "0123456789");
 string vr = objBllUtilitarios.TiraLixo(campo.Text);
 int tam = vr.Length;
 int dec = casaDecimal;
 if (tam < tammax && tecla.KeyValue != 8) { tam = vr.Length; }//{ tam = vr.Length + 1; }
 if (tecla.KeyValue == 8) { tam = tam - 1; }
 if (tecla.KeyValue == 8 || tecla.KeyValue >= 48 && tecla.KeyValue <= 57 || tecla.KeyValue >= 96 && tecla.KeyValue <= 105)
 {
 if (tam <= dec) { campo.Text = vr; }
 if ((tam > dec) && (tam <= 5))
 {
 if (tam >= 3)
 {
 campo.Text = vr.Substring(0, tam - 2) + "," + vr.Substring(tam - dec, tam-1);
 }
 else
 {
 campo.Text = vr.Substring(0, tam - 2) + "," + vr.Substring(tam - dec, tam);
 }
 }
 }
 }
 }

Vocês sabem me orientar de como colocar o valor desta maneira 1,234 e nao 41,23? Ou tem algum método que já faz isso para me passar?

 

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Procure no google sobre "mascara valor monetario", você deve achar algo em JS, daí é só você editar de acordo com sua necessidade.

 

 

Abraço e sucesso!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.