WPF – Il controllo StackPanel

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:https://deghetto.wordpress.com/2011/02/05/libro-visual-basic-2010-spiegato-a-mia-nonna/

Un controllo StackPanel è un contenitore di altri controlli: inserendo i controlli all’interno dello StackPanel, potrete notare che essi vengono disposti uno sopra l’altro.

Nella seguente figura potete vedere il controllo in fase di progettazione.

27.25

La definizione XAML predefinita è la seguente:

   1:  <StackPanel
   2:    Height="100"
   3:    HorizontalAlignment="Left"
   4:    Margin="10,10,0,0"
   5:    Name="StackPanel1"
   6:    VerticalAlignment="Top"
   7:    Width="200" />

Vediamo ora il codice XAML di un’applicazione con tre controlli Button inseriti in uno StackPanel:

   1:  <!-- Esempio: 27.12 -->
   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="173" Width="187">
   6:      <Grid>
   7:      <StackPanel >
   8:        <Button
   9:          Margin="3,8,3,4"
  10:          Padding="2"
  11:          FontSize="20">
  12:          Azione n. 1
  13:        </Button>
  14:        <Button
  15:          Margin="3,4,3,4"
  16:          Padding="2"
  17:          FontSize="20">
  18:          Azione n. 2
  19:        </Button>
  20:        <Button
  21:          Margin="3,4,3,4"
  22:          Padding="2"
  23:          FontSize="20">
  24:          Azione n. 3
  25:        </Button>
  26:      </StackPanel>
  27:    </Grid>
  28:  </Window>

La cosa interessante di uno stack panel è la sua possibilità di ridimensionare i controlli contenuti al suo interno (ved. figura seguente).

27.26