Vb.net 当日值为<;时,AddYear不起作用;10

Vb.net 当日值为<;时,AddYear不起作用;10,vb.net,Vb.net,我在以下方面遇到了问题:我有两个文本框被屏蔽为ShortDate。当我在第一个文本框中插入日期时,我需要第二个文本框显示两年后的日期 例如,如果我将10/08/2013放在第二个框中,则应显示10/08/2014 代码如下: Private Sub txtAcquired_LostFocus(sender As Object, e As EventArgs) Handles txtAcquired.LostFocus Dim Acquired As Date Acquired =

我在以下方面遇到了问题:我有两个文本框被屏蔽为
ShortDate
。当我在第一个文本框中插入日期时,我需要第二个文本框显示两年后的日期

例如,如果我将10/08/2013放在第二个框中,则应显示10/08/2014

代码如下:

Private Sub txtAcquired_LostFocus(sender As Object, e As EventArgs) Handles txtAcquired.LostFocus
    Dim Acquired As Date
    Acquired = txtAcquired.Text
    txtDisposal.Text = Acquired.AddYears(2)
End Sub
当日期的日值大于9时,它可以正常工作,但当我将日期值设置为1到9之间时,它不工作,例如,如果我将日期设置为2011年4月4日,则第二个框显示为40/42/013


如果有人能在这个问题上提供帮助,我们将不胜感激。

返回的日期有错误。这就解决了问题

Private Sub txtAcquired_LostFocus(sender As Object, e As EventArgs) Handles txtAcquired.LostFocus
    Dim Acquired As Date
    If Date.TryParse(txtAcquired.Text, Acquired) Then
      txtDisposal.Text = Acquired.AddYears(2).ToString("MM/dd/yyyy")
    End If
End Sub

在使用类型之前,请尝试转换类型<代码>日期不=
字符串
。请在代码顶部设置选项Strict,或在项目属性中设置该选项。您正在为示例中的日期变量分配字符串。