清除日期选择器的值时出现InvalidCastException错误

时间:2012-02-20 11:44:18

标签: vb.net visual-studio-2010 null datepicker .net

我使用这样的代码来清除几个文本框中的值:

Private Sub RibbonButtonInsert_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RibbonButtonInsert.Click

    UpdateDataSource()

    StudentsBindingSource.ResetBindings(True)
    DatePickerDateOfBirth.Value = ""
    RichEditBoxForeName.Focus()
    StudentsBindingSource.AddNew()
End Sub

因为日期选择器控件没有像其他控件那样清除,所以我尝试了:

    DatePickerDateOfBirth.Value = ""

但不清楚。相反,我得到一个“InvalidCastException”。

您能告诉我正确清除此数据选择器中的值所需的编码吗?

2 个答案:

答案 0 :(得分:1)

你不能将DateTimePicker Value设置为null或空字符串,它的值必须是日期

但你可以使用ShowCheckBox Property

在datetimepicker中选中一个复选框

然后使用dateTimePicker.Checked = false dateTimePicker.Checked

答案 1 :(得分:1)

实际上你没有清除它,你正在为它分配一个字符串值。由于它是日期类型,因此分配错误。

指定的值必须是日期格式,您可以这样做:

DatePickerDateOfBirth.Value = Date.MinValue

稍后你可以检查,如果该值等于MinValue,则不设置日期。