Public Shared Function CurrencyOnly_text(ByVal TargetTextBox As TextBox, ByVal CurrentChar As Char) As Boolean
If IsNumeric(CurrentChar) = True Then
Return False
End If
If CBool(((Convert.ToString(CurrentChar) = ".00" AndAlso CBool(InStr(TargetTextBox.Text, ".00"))))) Then
Return True
End If
If Convert.ToString(CurrentChar) = ".00" OrElse CurrentChar = vbBack Then
Return False
End If
Return True
End Function
เอา code ข้างบน ไปไว้ใน Form Calss แล้วทำการเรียก class มาใช้งาน (class ที่ใช้งานคือ ClassCall อันนี้แล้วแต่จะตั้งนะ)
แล้วก้อเอา โค๊ตข้างล่างนี้ไป วางในฟอร์มที่ต้องการ และกำหนด text ที่ไม่ต้องการให้พิมพ์ตัวอักษร ให้พิมพ์ได้เฉพาะตัวเลขเท่านั้น
Code (VB.NET)
Private Sub txtPriU_7_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtPriU_7.KeyPress
e.Handled = ClassCall.CurrencyOnly_text(txtPriU_7, e.KeyChar)
MessageBox.Show("กรอกได้เฉพาะตัวเลขเท่านั้น !!!", "แจ้งให้ทราบ", MessageBoxButtons.OK, MessageBoxIcon.Information)
End Sub