Saludos a todos !!!
Aquí un pequeño aporte, se trata de un solo aceptar caracteres numéricos en un TextBox (la mayoría lo deben de conocer del VB 6.0) pero ahora en VB 9.0 (VB 2008).
Este era el código en VB 6.0:
'// Esta subrutina se encargar de impedir la escritura de caracteres que no sean _
estrictamente numéricos...
Public Sub OnlyNumbers(Code As Integer)
Select Case Chr(Code)
Case "0" To "9"
Case Chr(8)
Case Chr(44)
Code = 0
Case Else
Code = 0
End Select
End Sub
______________________________________________________________________________________
Ahora este es el código en VB .Net (yo uso VB 2008 pero es válido en VB .Net y VB 2005):
Option Explicit On
Option Strict On
'//
Module Module1
Public Function OnlyNumbers(ByVal txtTBox As TextBox, ByVal Character As Char, ByVal bDecimal As Boolean) As Boolean
If (Char.IsNumber(Character, 0) = True) Or Character = Convert.ToChar(8) _
Or Character = "." Then
If Character = "." Then
If bDecimal = True Then
If txtTBox.Text.IndexOf(".") <> -1 Then Return True
Else : Return True
End If
End If
Return False
Else
Return True
End If
End Function
End Module
Option Explicit On
Option Strict On
'//
Public Class Form1
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
'//
e.Handled = OnlyNumbers(txtSnAdministrator0, e.KeyChar, True)
'//
End Sub
End Class
Cuando llamamos a la función, si pasamos el parámetro bDecimal (tipo booleano) como True, permitirá además de los caracteres numéricos, escribir el punto (".") decimal. con False, los caracteres serán exclusivamente numéricos.
Espero les pueda servir de algo, estas recopilaciones que he podido hacer mis "largas navegaciones por la web" !!!
Saludos !!!
Manuel F. Borrego S.
Barcelona, Edo. Anzoátegui. Venezuela