运行时错误:对象期望在if语句中不起作用

Wil*_*nry 6 vb.net visual-studio-2010 jscript

当我删除外部if语句时,addmessage将创建一个链接,txtBillTxtSetSrc单击时将跳转到该字段.在if语句内部显示链接

Microsoft JScript运行时错误:预期的对象".

它没有if语句.为什么它不能用呢?

If Me.txtBillTxtSetSrc.Text.Trim.Length > 0 Then
  validateExpression = "^[BCGHJSR][0-9][0-9]"
  ismatch = Regex.IsMatch((txtBillTxtSetSrc.Text).ToUpper, validateExpression)

  If ismatch = False Then
    tempErrorMsg = LASPBS_Classes.Errors.MainframeError.getError("281W") ' Text Set Must be B01-B99, etc.
    Me.MessageCenter.addMessage(tempErrorMsg, "#", "txtBillTxtSetSrc", "form1", "E")
    Me.MessageCenter.Visible = True
  End If
End If
Run Code Online (Sandbox Code Playgroud)

小智 1

检查以确保 txtBillTxtSetSrc 在使用时有效。如果它是 Nothing(null) 那么您无法访问 .Text 属性等。另外,如果它是某种东西,它可能是属性之一。我会逐一检查它们。

 If Not (Me.txtBillTxtSetSrc is Nothing) andalso (Me.txtBillTxtSetSrc.Text.Trim.Length > 0) Then 
    validateExpression = "^[BCGHJSR][0-9][0-9]"
    ismatch = Regex.IsMatch((txtBillTxtSetSrc.Text).ToUpper, validateExpression)

    If ismatch = False Then
      tempErrorMsg = LASPBS_Classes.Errors.MainframeError.getError("281W") ' Text Set Must be B01-B99, etc.
      Me.MessageCenter.addMessage(tempErrorMsg, "#", "txtBillTxtSetSrc", "form1", "E")
      Me.MessageCenter.Visible = True
  End If
 End If
Run Code Online (Sandbox Code Playgroud)