왜 작동하지 않는지는 잘못된 문자 코드입니다.
아스키 코드는 다음과 같다 :
- 따옴표 당신이 당신의 코드를 변경하는 경우
'
= 39
- 쉼표
,
= 44
가 작동됩니다
If Asc(e.KeyChar) = 39 Or Asc(e.KeyChar) = 44 Then
e.Handled = True
End If
참고 : 사본 & ,
과 '
의 붙여 넣기가 여전히 작동합니다.
& 붙여 넣기를 텍스트 상자에 완전히 붙여 넣지 않으려면 ShortcutsEnabled
- 속성을 False
으로 설정할 수 있습니다.
당신이 사본 & 붙여 넣기를 해제하지 않으려면, 당신은 추가로 Validating
- 이벤트의 텍스트 상자-내용을 확인하거나 빈 문자열로 쉼표와 그을음있는 qoute를 대체 할 수
이
Private Sub TextBox1_Validating(sender As Object, e As System.ComponentModel.CancelEventArgs) Handles TextBox1.Validating
TextBox1.Text = TextBox1.Text.Replace(",", "").Replace("'", "")
End Sub
귀하의 질문은 다른 게시물에 응답 : [Windows 응용 프로그램의 텍스트 상자에서 특수 문자를 사용하지 않는 방법] (https://stackoverflow.com/questions/39965122/vb-net-textbox-no-special-characters) –
나는 이해하지 못했습니다. , 난 단지 두 개의 특수 문자 (작은 따옴표 (') 및 쉼표 (,)를 막으려 고합니다 –
내가 잘못 희망하지만, 당신이 SQL 쿼리에 대한 "잘못된"값을 작성에서 사용자를 방지하려면 - 거기에 더 나은 해결책을 찾아라. – Fabio