vb.net – 在FORMAT功能方面需要帮助

我编写了一个代码并想要转换值,如果用户写入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

转载注明原文:vb.net – 在FORMAT功能方面需要帮助 - 代码日志