1
resposta

Duvida na Mascara de Moeda

Boa Tarde, quando utilizo a mascara de moeda respeitando a notação americana e que a ordem de grandeza venha ser milhões e caso eu no momento de escrever ou informar o valor em campo texto não escreva a quantidade total estabelecida pelo campo, mas apenas metade do mesmo, como eu faço para evitar o caso que apareceu no exemplo citado pelo professor do número que ficou "R$ .233.333,00", o tratamento para eliminar esses pontos ou demais caracteres a esquerda eu fazia isso no fonte ou poderia fazer já durante a criação da máscara.

1 resposta

Markus,

Você pode fazer nos dois, na fonte OU criação da máscara, fica ao seu critério o que é mais conveniente. Exemplos:

1 - Se você vai usar essa variável pré-formatada em vários pontos do seu programa, então talvez compense fazer a formatação uma vez só;

2 - Se você vai usar somente uma vez a formatação, talvez não seja necessário criar uma variável para armazenar o valor formatado;

Agora para você trabalhar com mais flexibilidade com formatações, você pode usar uma biblioteca chamada "System.Globalization"

Por favor, veja os links abaixo, estão muito interessantes:

==========================================================

Docs .NET Navegador da API .NET System.Globalization

NumberFormatInfo Classe - Referência

Namespace: System.Globalization

Assembly: System.Runtime.dll

Fornece informações específicas da cultura para formatação e análise de valores numéricos.

https://docs.microsoft.com/pt-br/dotnet/api/system.globalization.numberformatinfo?view=net-6.0

==========================================================

C# CultureInfo tutorial

last modified December 3, 2021

https://zetcode.com/csharp/cultureinfo/#:~:text=C%23%20tutorial%20is%20a%20comprehensive%20tutorial%20on%20C%23,of%20customizing%20the%20application%20to%20a%20specific%20culture.

==========================================================

System.Globalization Namespace

Contém classes que definem informações relacionadas à cultura, incluindo idioma, país/região, calendários em uso, padrões de formato para datas, moeda e números e ordem de classificação para strings. Essas classes são úteis para escrever aplicativos globalizados (internacionalizados). Classes como StringInfo e TextInfo fornecem funcionalidades avançadas da globalização, incluindo suporte substituto e processamento de elementos de texto.

https://docs.microsoft.com/en-us/dotnet/api/system.globalization?view=net-6.0

==========================================================

Como formatar moeda e casas decimais no C Sharp (C#)

https://www.blogson.com.br/como-formatar-moeda-ou-casas-decimais-no-c-sharp-c/

==========================================================

Aqui mesmo na Alura tem um curso só para isso que eu pretendo fazer em breve.

Mas o pré-requisito é: "C# parte 8: List, lambda, linq"

Curso de C# Brasil: Formate datas, cpf e números nacionais

https://cursos.alura.com.br/course/c-sharp-brasil-lidando-com-datas-numeros-documentos

==========================================================

Espero ter ajudado, e se consegui resolver sua dúvida, por favor feche o tópico.

[]'s,

Fabio I.