Вам нужно будет прикрепить обработчик событий к элементу управления редактирования ячейки, который получает данные, которые будут реагировать на событие KeyPress.Это можно сделать, обработав событие EditingControlShowing.
Вот некоторый базовый код, который делает это:
Public Class Form1
Private Sub DataGridView1_EditingControlShowing(sender As System.Object, e As System.Windows.Forms.DataGridViewEditingControlShowingEventArgs) Handles DataGridView1.EditingControlShowing
Dim c As Control
c = e.Control
AddHandler c.KeyPress, AddressOf Handle_KeyPress
End Sub
Protected Sub Handle_KeyPress(sender As Object, e As KeyPressEventArgs)
If Char.IsLetterOrDigit(e.KeyChar) Then
TextBox1.Text += e.KeyChar
e.Handled = True
End If
End Sub
End Class
Существуют другие события, на которые вы можете реагировать, например KeyDown, но обычно KeyPressпредпочтительнее, так как он дает вам Char с аргументами события.С такими событиями, как KeyDown, у вас вместо этого будут KeyCodes, которые не позволяют легко определить, был ли ввод прописным или строчным.