O X do Xamarin Forms — Mascara de Moeda (Currency), Converters em Ação!

Fala galera,

Beleza?

Money, Money , Money, Money!!! MONEY!!!!!!

Essa musica, fica na cabeça!

Campo de moeda, dinheiro, currency .. etc.. quem nunca precisou fazer um do tipo?

Anteriormente eu escrevi um artigo sobre Mascaras e Validações com Xamarin.Forms. Muita gente me perguntou depois dele se tinha alguma solução para o campo do tipo "moeda".

Então hoje alem de lhes trazer a solução, lhes trago um pack de converters para resolver diversos problemas.

Sem mais vamos utilizar!

Configurando o pacote

Vamos ao nuget instalar o pacote Xamarin.Forms.ConvertersPack , instale apenas no projeto compartilhado :

Pronto, sem mais configurações !

O Pacote contem os seguintes converters :

  • CurrencyConverter : Transforma seu entry em um campo moeda.
  • DecimalConverter : Conversor para Decimal.
  • EqualsConverter : Compara se dois campos são iguais.
  • HasDataConverter : Retorna se um objeto ou lista possui valor.
  • HexToColorConverter : Converte hexadecimal para uma cor.
  • ImageFromByteArrayConverter : Converte um array de bytes no tipo Image.
  • ImageFromFileConverter : Convert uma imagem no repositorio local do dispositivo no tipo Image.
  • InvertedBooleanConverter : Inversor de boolean.
  • ItemTappedEventArgsConverter : Converte o item selecionado para um objeto. Ideal para Listview.
  • LowerTextConverter : Transforma seu texto em minúsculo.
  • NullToBooleanConverter : Verifica se o parametro é nulo e retorna true ou false.
  • UpperTextConverter : Tramsforma seu texto em maiusculo.

Certo, vamos utilizar!

Utilizando o pacote

Para utilizar o pacote basta declarar o namespace no xaml : xmlns:converterPack=”clr-namespace:Xamarin.Forms.ConvertersPack;assembly=Xamarin.Forms.ConvertersPack” , em seguida vamos implementar alguns exemplos.. Incluindo a moeda :

Declaramos 3 dos diversos Converters.

Os converters são declarados no Resource Dictionary e utilizados dentro da propriedade que queremos obter o resultado da conversão. No exemplo acima dentro de text.

Vamos rodar :

Bacana não? Alias queria ter esse balance :(

Você pode utilizar qualquer um dos converters do pacote, da mesma forma.

Você também pode fazer seu próprio converter , basta criar uma classe que implementa a IValueConverter, por exemplo :

Ai basta utilizar no Xaml ! :D Muito legal em?

Se quiserem podem baixar o exemplo utilizado clicando aqui.

Quer ver outros artigos sobre Xamarin ? Clique aqui.

Espero ter ajudado!

Aquele abraço!