MOEDA TEXTBOX

ERLANMG 26/04/2013 11:17:42
#422549
Caros Colegas,

Qual a melhor formar de usar estilo moeda em um textbox em vb.net?

Desde já agradeço pela atenção.

Abraços.
OMAR2011 26/04/2013 12:27:59
#422558
Noutro site foi escolhido a forma mais correta,
TextBox1.Text = Double.Parse(TextBox1.Text).ToString([Ô]C[Ô])
ERLANMG 26/04/2013 12:42:26
#422560
Encontrei essa pela net

Public Class Utils
[ô][ô][ô] <summary>
[ô][ô][ô] Método que formata para moeda o conteúdo de um TextBox
[ô][ô][ô] </summary>
[ô][ô][ô] <param name=[Ô]txt[Ô]>Controle a ser formatado</param>
[ô][ô][ô] <remarks></remarks>
Public Shared Sub TextBoxMoeda(ByRef txt As TextBox)
Dim n As String = String.Empty
Dim v As Double = 0
Try
n = txt.Text.Replace([Ô],[Ô], [Ô][Ô]).Replace([Ô].[Ô], [Ô][Ô])
If n.Equals([Ô][Ô]) Then n = [Ô]000[Ô]
n = n.PadLeft(3, [Ô]0[Ô])
If n.Length > 3 And n.Substring(0, 1) = [Ô]0[Ô] Then n = n.Substring(1, n.Length - 1)
v = Convert.ToDouble(n) / 100
txt.Text = String.Format([Ô]{0:N}[Ô], v)
txt.SelectionStart = txt.Text.Length
Catch ex As Exception
MessageBox.Show(ex.Message, [Ô]TextBoxMoeda[Ô])
End Try
End Sub
End Class
Private Sub TextBox21_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox21.TextChanged
Utils.TextBoxMoeda(TextBox21)
End Sub


o que acham???

MAXGUIMEL 26/04/2013 14:06:40
#422568
Pode ser usado assim tbem:

txtCampo.Text = Format(Convert.ToDouble(txtCodigo.Text), [Ô]#,##0.00[Ô])

ERLANMG 26/04/2013 15:08:19
#422572
MAXGUIMEL, boa tarde!

Mas para usar como voce mencionou, teria que colocar dentro do evento lostfocus e ideal seria algum para usar dentro do TextChanged.

Abraços,
JOEYRFS 26/04/2013 15:26:28
#422575
TextBox1.Text = Format(TextBox1.Text, [Ô]Currency[Ô])
PEGUDO 27/04/2013 19:27:40
#422618
[txt-color=#0000f0]Dim [/txt-color]K [txt-color=#0000f0]As Decimal [/txt-color]= 12225.623
TextBox1.Text = FormatCurrency(K, 2)) [txt-color=#007100][ô]O nº 2 indica que são 2 casas depois da vírgula[/txt-color]
FELLIPEASSIS 27/04/2013 19:56:39
#422619
Resposta escolhida
Tópico encerrado , respostas não são mais permitidas