MOEDA TEXTBOX
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.
Qual a melhor formar de usar estilo moeda em um textbox em vb.net?
Desde já agradeço pela atenção.
Abraços.
Noutro site foi escolhido a forma mais correta,
TextBox1.Text = Double.Parse(TextBox1.Text).ToString([Ô]C[Ô])
TextBox1.Text = Double.Parse(TextBox1.Text).ToString([Ô]C[Ô])
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???
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???
Pode ser usado assim tbem:
txtCampo.Text = Format(Convert.ToDouble(txtCodigo.Text), [Ô]#,##0.00[Ô])
txtCampo.Text = Format(Convert.ToDouble(txtCodigo.Text), [Ô]#,##0.00[Ô])
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,
Mas para usar como voce mencionou, teria que colocar dentro do evento lostfocus e ideal seria algum para usar dentro do TextChanged.
Abraços,
TextBox1.Text = Format(TextBox1.Text, [Ô]Currency[Ô])
[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]
Tópico encerrado , respostas não são mais permitidas