user3165438
user3165438

Reputation: 2661

Radio buttons Navigation by KeyBoard

I have 3 radio buttons on my WinForm.

I would like to give the user the option to navigate between them also by keyboard.
Is there a way to enable it?

I understand I have to use this code:

 if (e.KeyChar==Convert.ToChar(Keys.Down))  

But how do I know which single radio button I have to set as checked?

Upvotes: 3

Views: 3195

Answers (1)

StevieB
StevieB

Reputation: 1000

The simplest solution is to use keyboard shortcuts. This entails prefixing one character in each RadioButton's text with the & character.

For example if the text of your radio button is "&Big option" then the user can select this option by pressing the [ALT] and B keys at the same time.

Additionally, once one of the radio buttons has the focus you can navigate between them by using the up and down arrows. In general, the user can navigate between controls by using the [Tab] key. In VS 2010 the tab order may be modified by selecting the View->Tab Order menu item.

The same keyboard shortcut trick works for many other controls. For example if you have a TextBox control preceded by a label control you can prefix a letter in the Label control with &. Now since the Label (by default) can't take the focus, when the user uses the Label's keyboard shortcut, the focus will move to the next control in the Tab Order i.e. the TextBox.

If you want a control to be skipped when using the [Tab] key set its TabStop property to False.

Upvotes: 4

Related Questions