If e.DataCol.Name = "证件号码" Then '是身份证号码发生变化吗? 
    If e.DataRow.IsNull("证件号码") Then '身份证号码是否为空 
        e.DataRow("生日") = Nothing '如果为空,则清除出生日期 
    Else 
        '否则从身份证号码列中提取出生日期 
        e.DataRow("生日") = ReadBirthday(e.DataRow("证件号码")) 
    End If 
End If 
 
Select Case e.DataCol.Name 
    Case "生日" 
        If e.DataRow.IsNull("生日") Then  '身份证号码是否为空 
            e.DataRow("年龄") = Nothing '如果为空,则清除年龄 
        Else 
            Dim d As Date = e.NewValue 
            Dim y As Integer = d.year 
            If format(d, "MMdd") <= Format(Date.Today, "MMdd") Then 
                e.DataRow("年龄") = Date.Today.Year - y 
            Else 
                e.DataRow("年龄") = Date.Today.Year - y -1 
            End If 
        End If 
End Select 
 
 |