2014-03-31 79 views
0

我有一個郵政編碼的文本框,其中我做了一個驗證,即用戶輸入的數字少於或多於6,但即使用戶輸入了3個數字,它仍在工作。我想要顯示錯誤消息,如果用戶進入不對勁如何驗證TextBox?

Private Shared Function ValidateZip(ByVal pintZip As String, ByRef pobjErrMsg As Common.ErrorMessage) As Boolean 
     If pintZip.Length <> 6 Then 

     ElseIf IsNumeric(pintZip) Then 

     End If 

     Return True 
End Function 
+0

所以你寫的'如果pintZip.Lenght <> 6 Then'然後呢? – Hoh

+0

我上面提到過,如果用戶輸入錯誤的郵政編碼,我想顯示一條錯誤消息 – anuj

回答

0

你必須在任何IF或ELSEIF塊沒有代碼,你總是返回true

+0

我想向用戶顯示一個錯誤,然後我實現了這個錯誤 – anuj

+0

您可能會使用MessageBox類顯示錯誤,或者您可能會產生一個自定義窗體來顯示錯誤... MessageBox是最簡單的,但看起來不那麼好或者很靈活。 Hoh的答案看起來不錯... –

0
Private Shared Function ValidateZip(ByVal pintZip As String, ByRef pobjErrMsg As Common.ErrorMessage) As Boolean 
     If pintZip.Length <> 6 Then 
      MsgBox("Zip code should have 6 characters") 
      pintZip.Focus 
      Return False 
     ElseIf IsNumeric(pintZip) Then 
      MsgBox("Congratulations, you have entered right Zip code") 
      Return True 
     End If 
End Function 

嘗試這樣

更新#1

好像你正在使用ASP.net沒有VB.net,這裏是答案:

不能顯示對話框從ASP.NET應用程序服務器,這是沒有意義的,因爲你的用戶正在使用瀏覽器,並且無法在服務器上看到消息框。你必須瞭解網站是如何工作的,服務器端代碼(在你的情況下爲ASP.NET)會在服務器上生成html,javascript等,然後瀏覽器加載該內容並將其顯示給用戶,所以爲了將模式消息框呈現給用戶必須使用Javascript,例如警報功能。

這裏是asp.net的例子:

example

SOURCE

+0

我試過bt我有錯誤 System.InvalidOperationException:當應用程序未在UserInteractive模式下運行時,顯示模態對話框或窗體不是有效的操作。指定ServiceNotification或DefaultDesktopOnly樣式以顯示來自服務應用程序的通知。 – anuj

+1

你在使用ASP.net嗎?做瀏覽器應用程序 – Hoh

+0

是的,我做瀏覽器應用程序 – anuj