Ir para conteúdo

Arquivado

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

Kr3w^

c#, formato Moeda

Recommended Posts

Pessoal, venho aqui pra tirar uma duvida com voces... é o seguinte

 

meu sistema tem 2 SUBTOTAIS e 1 TOTAL GERAL

 

ai eu uso essa formula:

 

USO 3 VARIAVEIS DO TIPO DOUBLE

 

as variaveis sao: subtotal1, subtotal2 e totalgeral

 

txtBox.Text = txtBox.Text + subtotal1.ToString("#,##0.00")

txtBox.Text = txtBox.Text + subtotal2.ToString("#,##0.00")

totalgeral = subtotal1 + subtotal2;

txtBox.Text = txtBox.Text + geraltotal.ToString("#,##0.00")

 

usando no meu PC, que é Windows XP só que esta com o Vista PAck Transformation

 

o resultado do Textbox aparece assim: (exemplo) 370,00 = 370 reais... usando essa formula ("#,##0.00")

 

mais la no computador onde vai ficar o sistema é windows XP e o resultado sai assim:

 

37,000.00 ... porque isso? o valor deveria sair: 370,00

 

e se caso eu tiro a função ("#,##0.00") e deixo somente: ("") o resultado fica assim: 37000 e não 370 , ele adiciona os 2 zeros de qualquer maneira.

 

obg!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Use decimal ao invés de double.

 

Faça assim:



txtBox.Text = txtBox.Text + String.Format("{0:C}",subtotal1);

txtBox.Text = txtBox.Text + String.Format("{0:C}",subtotal2);

totalgeral = subtotal1 + subtotal2;

txtBox.Text = txtBox.Text + String.Format("{0:C}",geraltotal);

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara, mesmo eu usando o String.Format e fazendo como voce disse ai... o valor que era pra sair R$ 370,00 , saiu assim: R$ 37,000.00

 

 

como disse... os dois '0' sai no final sempre, mesmo se eu pedi-se para o programa fazer o valor sair somente: 370, ele sai: 37000

 

o problema não é no Windows la? la é Windows XP Prof, SP3...

 

o problema é la, afinal, no meu PC o resultado aparece normal, e no notebook o resultado também aparece normal, e em outros computadores com Windows XP o resultado também aparece normal... só no computador da loja que sai dois '0' no final...

 

 

OBS: ele tinha um outro programa la de 'CUPOM FISCAL' e eu notei que no programa ele fez uma conta la e deu o resultado: 788.00

 

naquele programa também saiu .00 e não só o valor de : 788, saiu assim: 788.00

 

e então... o que pode ser ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

problema resolvido, no Program.cs do meu programa eu coloquei esse codigo

 

 

CultureInfo newCulture = new CultureInfo("pt-BR");
Thread.CurrentThread.CurrentCulture = newCulture;
OBS: Antes dos codigos que irá execultar o programa
ou seja, sempre que o programa for execultado, a linguagem da aplicações sera em pt BR...
obg!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

então, eu preferi deixar no programa isso, porque ele tem outros programas la e pelo o que eu vi os programas usam linguagem english, então deixei só minha aplicação em pt-BR pra não dar nenhuma cagada la... mesmo assim obrigado! :D

 

gostei do novo design do forum :)

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.