mario.deghetto

Visual Basic & .NET
posts - 332, comments - 79, trackbacks - 0

WPF - Il controllo ListBox

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.

27.19

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.

27.20

Print | posted on sabato 26 febbraio 2011 6.17 |

Feedback

No comments posted yet.

Post Comment

Title  
Name  
Email
Url
Comment   
Please add 4 and 3 and type the answer here:

Powered by: