vb.net numericupdown空值

时间:2014-02-18 11:08:45

标签: vb.net string numerical

我使用vb.net来创建一个应用程序 当我尝试使用此代码时,如果我从中选择值后删除数字上下值我收到错误(从字符串&#34转换;"键入'十进制'无效。)

Public Class FormAdd


Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    Me.StudenttableBindingSource.AddNew()
End Sub

Private Sub BttnSave_Click(sender As Object, e As EventArgs) Handles BttnSave.Click

    Me.StudenttableBindingSource.EndEdit()
    Me.StudenttableTableAdapter.Update(Me.StudentDataSet.studenttable)
    Me.StudenttableTableAdapter.Fill(Me.StudentDataSet.studenttable)
    MsgBox(" Student Saveed", MsgBoxStyle.Information)
    Me.StudenttableTableAdapter.Fill(Main.StudentDataSet.studenttable)
    Me.Close()

End Sub

Private Sub CheckBox1_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox1.CheckedChanged

    If CheckBox1.Checked = False Then

        AgeNumericUpDown.Value = ""


    End If
End Sub

:我想删除值而不是文本

2 个答案:

答案 0 :(得分:0)

我认为您无法使用默认的NumericUpDown控件执行此操作。 Value属性需要一个整数值,因此您不能将字符串值设置为“”。有些第三方控件具有此功能。你只是把它设置为空。与默认控件最接近的是...如果要将其设置为空,只需更改控件的ForeColor属性,这样用户就不会看到任何值,因为文本的颜色与背景,但它仍然存在。

NumericUpDown1.ForeColor = Color.Transparent

输入新值...再次将颜色更改为黑色...

NumericUpDown1.ForeColor = Color.Black

答案 1 :(得分:0)

据我所知,NumericUpDown控件不像组合框,你可以从列表中删除项目。

NumericUpDown控件的目的是按增量属性中指定的值递增/递减文本区域的数值。

如果要跳过下一个值,只需使用ValueChanged事件并检查它是否已被使用,然后再按递增属性中指定的值递增/递减该值。

或者,如果列表不是太大且列表的可接受数量,那么您可以使用组合框。