如何在VB.NET中防止文本框中输入和出现非数值?
我真的需要防止任何非数字输入,包括粘贴到我的文本框,我还想防止它在被删除之前出现在文本框上,如果你对你的代码建议给出一些提示,那就太好了,因为我只是一个初学者 编辑:添加CtrlV处理和优化按键事件。 您可以使用此代码来防止处理数值:如何在VB.NET中防止文本框中输入和出现非数值?,vb.net,Vb.net,我真的需要防止任何非数字输入,包括粘贴到我的文本框,我还想防止它在被删除之前出现在文本框上,如果你对你的代码建议给出一些提示,那就太好了,因为我只是一个初学者 编辑:添加CtrlV处理和优化按键事件。 您可以使用此代码来防止处理数值: Private Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TextBox1.KeyPress If Char.IsDigit(e.KeyChar) T
Private Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TextBox1.KeyPress
If Char.IsDigit(e.KeyChar) Then ' Check if the value is a number
e.KeyChar = ChrW(0)
e.Handled = True
End If
End Sub
对于CtrlV处理,您可以使用以下代码:
Private Sub TextBox1_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
' Checking if control + v is clicked or Shift + Insert is clicked
If (e.Control AndAlso Char.ToLower(ChrW(e.KeyValue)) = "v"c) Or (e.Shift AndAlso e.KeyValue = Keys.Insert) Then
e.Handled = True
e.SuppressKeyPress = True
End If
End Sub
请查看以下链接:
如果您还有任何疑问,请告诉我。重复如果他们输入数字,会有什么灾难呢?我在提问之前已经看过了这些帖子,我很确定它们没有抓住我的一个要点!防止现场粘贴@SaechelI无法理解你@Protonix它不起作用,因为悲伤!将Handles textbox1.Keypress更改为Handles yourtextbox.Keypress