You can add this as a solution, as I have tested this and its working fine. Hope it helps.
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
AddHandler eTB.KeyDown, AddressOf eTB_Ev
Me.Controls.Add(eTB)
End Sub
Dim eWin_KeyDown As Integer = &H100
Dim eWin_KeyUp As Integer = &H101
Public Declare Function eAPISMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hWnd As Integer, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As String) As Integer
Public WithEvents eTB As New TextBox
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
eTB.Focus()
eAPISMessage(eTB.Handle.ToInt32, eWin_KeyDown, eWin_KeyUp, CStr(0))
End Sub
Private Sub eTB_Ev(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs)
MsgBox("Keydown pressed from Command3 button.")
Try
If ListBox1.SelectedIndex = 0 Then
Exit Sub
Else
Me.ListBox1.SelectedIndex = Me.ListBox1.SelectedIndex + 1
End If
Catch ex As Exception
End Try
End Sub
Private Sub ListBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListBox1.SelectedIndexChanged
End Sub