none
C# Windows forms: Como definir o formato moeda em uma MaskedTextBox? RRS feed

  • Pergunta

  • Olá programadores C#.

    Eu quero definir o formato moeda para uma MaskedTextBox. Mas se eu coloco o sinal "$", a mascara fica "R$" (em reais).

    Mas eu quero que fique em "U$" (em dolar). Como resolvo isso?

    Essa é uma aplicação para exclusiva para desktop. Não é para web.

    segunda-feira, 13 de março de 2017 01:57

Respostas

  • Olá,

    Se você alterou a culture da Thread, pode usar somente:

    string c = valor.ToString("C");

    Senão, pode especificar para esta conversão:

    string c = valor.ToString("C", CultureInfo.CreateSpecificCulture("en-US"));
    Att,


    Fabio Rosa.

    segunda-feira, 13 de março de 2017 18:48

Todas as Respostas

  • Bom dia!

    O fato do framework alterar para R$ está relacionado com a cultura da Thread, que provavelmente está em pt-BR. Você pode alterar a cultura de thread, ou aplicar uma globalização, ou ainda alterar a cultura apenas deste componente. Segue link desta funcionalidade: 

    https://msdn.microsoft.com/pt-br/library/b28bx3bh(v=vs.110).aspx

    Att,


    Fabio Rosa.

    • Sugerido como Resposta Daniel R. Arrais segunda-feira, 13 de março de 2017 11:21
    segunda-feira, 13 de março de 2017 10:55
  • Ainda não consegui colocar U$ usando essa rotina.
    segunda-feira, 13 de março de 2017 17:21
  • Boa tarde!

    Por favor, coloque o código que você fez aqui para avaliarmos.


    Fabio Rosa.

    segunda-feira, 13 de março de 2017 17:33

  •             Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
                Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US");
                string c = valor.ToString("C", CultureInfo.InvariantCulture);
    segunda-feira, 13 de março de 2017 18:37
  • Olá,

    Se você alterou a culture da Thread, pode usar somente:

    string c = valor.ToString("C");

    Senão, pode especificar para esta conversão:

    string c = valor.ToString("C", CultureInfo.CreateSpecificCulture("en-US"));
    Att,


    Fabio Rosa.

    segunda-feira, 13 de março de 2017 18:48