2012-11-26 31 views
6

當我刪除外部if語句時,addmessage將創建一個鏈接,單擊後將跳轉到txtBillTxtSetSrc字段。 if語句中的鏈接顯示運行時錯誤:對象預期不在if語句內工作

Microsoft JScript runtime error: Object expected".

它的工作原理沒有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 

回答

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