Vb.net 在文本框中仅允许单个逗号
我正在开发vb.net-windows应用程序 我有一个文本框,用户应该在其中输入数据。 我做了一些验证,比如,用户只能输入数字、字母和逗号。 (无其他符号。) 它工作正常,但我想限制只插入一个逗号,而不是多插入一个 如何做到这一点 我有下面的文本框按键事件代码Vb.net 在文本框中仅允许单个逗号,vb.net,vb.net-2010,Vb.net,Vb.net 2010,我正在开发vb.net-windows应用程序 我有一个文本框,用户应该在其中输入数据。 我做了一些验证,比如,用户只能输入数字、字母和逗号。 (无其他符号。) 它工作正常,但我想限制只插入一个逗号,而不是多插入一个 如何做到这一点 我有下面的文本框按键事件代码 ReadOnly ValidChars As String = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789," Private Sub txtNe
ReadOnly ValidChars As String = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789,"
Private Sub txtNewFlatName_KeyPress(sender As Object, e As KeyPressEventArgs) Handles txtNewFlatName.KeyPress
Select Case e.KeyChar
Case Convert.ToChar(Keys.Enter) ' Enter is pressed
' Call method here...
Case Convert.ToChar(Keys.Back) ' Backspace is pressed
e.Handled = False ' Delete the character
Case Chr(22) ' CTRL+V is pressed
' Paste clipboard content only if contains valid characters
e.Handled = If(Clipboard.GetText().All(Function(c) ValidChars.Contains(c)), False, True)
Case Else ' Other key is pressed
e.Handled = Not (ValidChars.IndexOf(e.KeyChar) > -1)
End Select
End Sub
在其他情况下,您可以使用此处描述的方法之一计算文本框中出现的“,”:或者您可以在类级别保留一个标志,并测试它是否打开(表示按下了“,”键)。您将希望从按键事件开始工作 分析是否按下逗号,如果是 然后将文本框作为字符串读取 使用子字符串循环读取每个字符,同时计算当前使用的 如果存在,则按下该键以防止进一步输入 另外,您可能希望使用Beep()来告诉他们这是不可接受的 希望对你有帮助