如何在Leave上刷新NumericUpDown

时间:2017-08-03 11:37:04

标签: vb.net

我有NumericUpDown控件来显示带有2个小数位的数字 如果我在离开后键入0,156,它将显示0,16。如果我在离开后输入0,那么就会有预期的0,00 但是,如果我删除NumericUpDown的所有内容(SelectAll + Delete),然后从该控件导航它将不会显示0,00。相反它会保持空白!

如果我删除了NumericUpDown中的所有内容,如何将指定格式的0转换为NumericUpDown?

1 个答案:

答案 0 :(得分:0)

经过一番搜索和实验后,我自己找到答案。

    Private Sub NumericUpDown1_Leave(sender As Object, e As EventArgs) Handles NumericUpDown1.Leave

        Dim Val As Decimal = 0
        If Decimal.TryParse(NumericUpDown1.Text, Val) = 0 Then
            NumericUpDown1.Value = 0
            NumericUpDown1.Text = NumericUpDown1.Value.ToString
        End If
    End Sub

仍然存在问题为什么输入空字符串(不可为空)数字输入控制。对此的回答永远不会像我想的那样来。