我有一个文本框,其中必须输入电话号码我想限制要在文本框中输入的数字最多8个地方怎么办?
答案 0 :(得分:1)
您可以订阅KeyDown
事件以查看按下了哪个键,然后只允许 Numeric & 退格键
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
TextBox1.MaxLength = 8
AddHandler TextBox1.KeyDown, AddressOf HandleTbKeyDown
End Sub
Private Sub HandleTbKeyDown(ByVal sender As Object, ByVal e As KeyEventArgs)
If Not ((e.KeyValue >= 48 AndAlso e.KeyValue <= 57) OrElse e.KeyValue = 46) Then
e.Handled = True
End If
End Sub
答案 1 :(得分:0)
对于只有数字的文本框,您可以这样做: -
if(!((e.keyCode>=48&&e.keyCode<=57)||(e.keyCode==46)))
你也可以检查长度为8,如
Texbox MaxLength = 8
答案 2 :(得分:0)
使用MaskedTextBox。见link。虽然这个例子适用于C#,但它的工作方式类似。您的面具属性将为 00000000
例如
myMaskTextBox.Mask = "00000000";
您可以使用日期,货币等格式数据。还有一个方便的 BeepOnError 属性。再看一下示例结尾。