我写了一个代码,想转换该值,就像用户写12一样,应将其转换为“12.00”
Reffered link

我引用了上面的链接并获得了“格式”功能,但是当我在项目中尝试使用该功能时,它将值转换为“0.00”

我在下面写的代码...

    Private Sub txtDisc_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles txtDisc.KeyDown
    If e.KeyCode = Keys.Return Then
        txtDisc.Text = Format(txtDisc.Text, "0.00")
        txtOpeningBal.Focus()
    End If
End Sub

如果我在编写代码时遇到任何错误,请帮助我。

我是这个功能的新手,也看到了msdn的帮助,但无法正确理解它...

最佳答案

您需要先将字符串txtDisc.Text转换为数值,然后再将其传递给Format()方法。

您可以执行以下操作:

txtDisc.Text = Format(Val(txtDisc.Text), "0.00")

或者,您可以解析值,并使用.Net方法(而不是VB6兼容性方法),如下所示:
Dim disc As Double
If Double.TryParse(txtDisc.Text, disc) Then
    txtDisc.Text = string.Format("{0:N2}", disc)
End If

10-06 00:57