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/
Il controllo ListBox permette di gestire una lista di elementi, eventualmente impostando lo stile di ciascun elemento, aggiungendo una casella di controllo (CheckBox) e/o un'immagine.
Una ListBox, inoltre, permette anche il data binding con una sorgente dati che restituisce un insieme di valori.

La definizione XAML predefinita è la seguente:
1: <ListBox
2: Height="100"
3: HorizontalAlignment="Left"
4: Margin="10,10,0,0"
5: Name="ListBox1"
6: VerticalAlignment="Top"
7: Width="120" />
Per fare un esempio concreto, create una nuova applicazione WPF e scrivete il seguente codice XAML:
1: <!-- Esempio: 27.09 -->
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="296" Width="433">
6: <Grid>
7: <ListBox
8: Height="182"
9: HorizontalAlignment="Left"
10: Margin="8,62,0,0"
11: Name="ListBox1"
12: VerticalAlignment="Top"
13: Width="281" FontSize="22">
14: </ListBox>
15: <TextBox
16: Height="37"
17: HorizontalAlignment="Left"
18: Margin="12,19,0,0"
19: Name="TextBox1"
20: VerticalAlignment="Top"
21: Width="277"
22: FontSize="22" />
23: <Button
24: Content="Aggiungi"
25: Height="37"
26: HorizontalAlignment="Left"
27: Margin="295,19,0,0"
28: Name="btnAggiungi"
29: VerticalAlignment="Top"
30: Width="101"
31: FontSize="22" />
32: <Button
33: Content="Cancella"
34: Height="37"
35: HorizontalAlignment="Left"
36: Margin="295,62,0,0"
37: Name="btnCancella"
38: VerticalAlignment="Top"
39: Width="101"
40: FontSize="22" />
41: <Button
42: Content="Leggi"
43: FontSize="22"
44: Height="37"
45: HorizontalAlignment="Left"
46: Margin="295,105,0,0"
47: Name="btnLeggi"
48: VerticalAlignment="Top"
49: Width="101" />
50: </Grid>
51: </Window>
Come potete vedere, abbiamo impostato una casella di testo, tre pulsanti e un controllo ListBox. Vediamo ora il codice Visual Basic, necessario per inserire nuovi elementi, per cancellarli dalla lista e per visualizzare il testo di un elemento nella casella di testo:
1: ' Esempio: 27.09
2: Class MainWindow
3: Private Sub btnAggiungi_Click(
4: ByVal sender As System.Object,
5: ByVal e As _
6: System.Windows.RoutedEventArgs) _
7: Handles btnAggiungi.Click
8: ListBox1.Items.Add(TextBox1.Text)
9: End Sub
10: Private Sub btnCancella_Click(
11: ByVal sender As System.Object,
12: ByVal e As _
13: System.Windows.RoutedEventArgs) _
14: Handles btnCancella.Click
15: ListBox1.Items.RemoveAt(
16: ListBox1.Items.IndexOf(
17: ListBox1.SelectedItem))
18: End Sub
19: Private Sub btnLeggi_Click(
20: ByVal sender As System.Object,
21: ByVal e As _
22: System.Windows.RoutedEventArgs) _
23: Handles btnLeggi.Click
24: Me.TextBox1.Text =
25: Me.ListBox1.SelectedValue.ToString
26: End Sub
27: End Class
In fase di esecuzione, l'applicazione si presenta come nella seguente figura.
