2016-09-18 15 views
-1

我們的應用程序非常龐大,我們一直在使用VAL方法來確保將文本框中的數據輸入正確轉換爲相關數字。但是,現在我們遇到了一些問題。例如,如果有人寫25,500,VAL函數將返回25而不是25500.看起來像它是預期的行爲,因爲一旦VAL方法找到像comma這樣的不可轉換字符,VAL方法就會停止。Conversion.VAL方法 - Global Hook

我想知道是否有一種方法可以在我的應用程序中創建此方法的全局掛鉤,以便每當我從應用程序調用VAL方法時,都應該調用我定義的方法,而不是從Microsoft.Visualbasic命名空間調用。

謝謝

回答

0

一個文本框按鈕和窗體上的標籤,這似乎這樣的伎倆。 做一個轉換子並調用它。

Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click 
    Dim result, middle As String 
    Dim newresult As Double 
    If TextBox1.Text Is Nothing Then 
     MsgBox("Empty TextBox!") 
    End If 
    result = (TextBox1.Text) 

    middle = result.Replace(",", String.Empty) 

    newresult = Val(middle) 
    Label1.Text = newresult.ToString 
    TextBox1.Text = Nothing 
End Sub 

希望這會有所幫助。 newresult被保留爲一個雙重用於進一步使用,並且該值僅在此示例中顯示爲清晰

+0

嗨,感謝您的回覆,但這不是我正在尋找。我需要一些全局覆蓋,以便每當我在應用程序的任何地方調用VAL方法時,它應該調用我的用戶定義的方法。我知道替換逗號或其他值(如$符號)會給我帶來正確的結果,但我已經使用了千次,所以不可能全部替換。我只能看到一種方法的全局鉤子。 –