Questo testo fa parte del capitolo 27 del libro “Visual Basic 2010 spiegato a mia nonna” che sarà pubblicato fra poche settimane. Trovate l’esempio di codice tra gli esempi liberamente scaricabili al seguente indirizzo:http://deghetto.wordpress.com/2011/02/05/libro-visual-basic-2010-spiegato-a-mia-nonna/
Un insieme di controlli di tipo RadioButton permette all'utente di selezionare un'opzione tra due o più scelte possibili in modalità mutuamente esclusiva: selezionando un controllo RadioButton diverso, il controllo precedentemente selezionato verrà deselezionato.
E' abbastanza raro trovare in una finestra un solo controllo RadioButton. Infatti, proprio per le sue caratteristiche è più comune trovare gruppi di due o più controlli di questo tipo.
La selezione di un controllo RadioButton avviene attraverso la proprietà IsChecked: se è impostata a True, il controllo è selezionato, se invece è impostata a False, il controllo risulta deselezionato (ved. figura seguente).

La definizione XAML predefinita è la seguente:
1: <RadioButton
2: Content="RadioButton"
3: Height="16"
4: HorizontalAlignment="Left"
5: Margin="10,10,0,0"
6: Name="RadioButton1"
7: VerticalAlignment="Top" />
Per fare un esempio semplice ma concreto, vediamo il seguente codice XAML:
1: <!-- Esempio: 27.10 -->
2: <Window x:Class="MainWindow"
3: xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
4: xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
5: Title="MainWindow" Height="225" Width="204">
6: <Grid>
7: <Grid
8: Margin="12,12,0,0"
9: HorizontalAlignment="Left"
10: Width="156"
11: Height="107"
12: VerticalAlignment="Top">
13: <RadioButton
14: Content="Opzione n. 1"
15: Height="16"
16: HorizontalAlignment="Left"
17: Margin="36,20,0,0"
18: Name="RadioButton1"
19: VerticalAlignment="Top"
20: IsChecked="False" />
21: <RadioButton
22: Content="Opzione n. 2"
23: Height="16"
24: HorizontalAlignment="Left"
25: Margin="36,42,0,0"
26: Name="RadioButton2"
27: VerticalAlignment="Top" />
28: <RadioButton
29: Content="Opzione n. 3"
30: Height="16"
31: HorizontalAlignment="Left"
32: Margin="36,64,0,0"
33: Name="RadioButton3"
34: VerticalAlignment="Top" />
35: </Grid>
36: <Button
37: Content="Button"
38: Height="23"
39: HorizontalAlignment="Left"
40: Margin="51,142,0,0"
41: Name="Button1"
42: VerticalAlignment="Top"
43: Width="75" />
44: </Grid>
45: </Window>
Aggiungiamo poi il codice Visual Basic per implementare la logica di funzionamento dei controlli RadioButton:
1: ' Esempio: 27.10
2: Class MainWindow
3: Private Sub Button1_Click(
4: ByVal sender As System.Object,
5: ByVal e As System.Windows.RoutedEventArgs) _
6: Handles Button1.Click
7: If RadioButton1.IsChecked Then
8: MessageBox.Show(
9: "Hai selezionato l'opzione n. 1")
10: ElseIf RadioButton2.IsChecked Then
11: MessageBox.Show(
12: "Hai selezionato l'opzione n. 2")
13: ElseIf RadioButton3.IsChecked Then
14: MessageBox.Show(
15: "Hai selezionato l'opzione n. 3")
16: Else
17: MessageBox.Show(
18: "Non hai selezionato alcuna opzione")
19: End If
20: End Sub
21: End Class
Potete vedere l'applicazione funzionante nella seguente figura.
