Firstly, set ALL your controls on the form, including text boxes's TabStop Property to False.
'Gets or sets the character corresponding to the key pressed.
'Declaration
Public Property KeyChar As Char
'Usage
Dim instance As KeyPressEventArgs
Dim value As Char
value = instance.KeyChar
instance.KeyChar = value
Use the KeyChar property to sample keystrokes at run time and to modify keystrokes under special run-time circumstances. For example, you can use KeyChar to disable non-numeric keypresses when the user enters a ZIP code, change all alphabetical keypresses to uppercase in a data entry field, or monitor the keyboard or other key input device for specific key combinations.
You can get or set the following keys:
a-z, A-Z.
CTRL.
Punctuation marks.
Number keys, both across the top of the keyboard and on the numeric keypad.
ENTER.
You cannot get or set the following keys:
The TAB key.
INSERT and DELETE.
HOME.
END.
PAGE UP and PAGE DOWN.
F1-F2.
ALT.
Arrow keys.
Example -
'The following example creates a TextBox control. The keypressed method uses 'the KeyChar property to check whether the ENTER key pressed. If the ENTER key is 'pressed, the Handled property is set to true, which indicates the event is 'handled.
Imports System
Imports System.Windows.Forms
Public Class Form1
Inherits Form
Public Sub New()
' Create a TextBox control.
Dim tb As New TextBox()
Me.Controls.Add(tb)
AddHandler tb.KeyPress, AddressOf keypressed
End Sub 'New
Private Sub keypressed(ByVal o As [Object], ByVal e As KeyPressEventArgs)
' The keypressed method uses the KeyChar property to check
' whether the ENTER key is pressed.
' If the ENTER key is pressed, the Handled property is set to true,
' to indicate the event is handled.
If e.KeyChar = Microsoft.VisualBasic.ChrW(Keys.Return) Then
e.Handled = True
End If
End Sub 'keypressed
Public Shared Sub Main()
Application.Run(New Form1())
End Sub 'Main
End Class 'Form1
Now use the e.Handled = True to set focus to the next text box.
To get the correct focus after selecting from the combo, use a if then statement within a sub to check the values. If only "Mandatory" was selected, disable the other text boxes. They can not receive focus whilst disabled, making sure that the next text box under Mandatory gets the focus.