2012-11-26 2 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