WrapPanel
Il WrapPanel posiziona gli elementi figli in modo sequenziale da destra verso sinistra, passando alla riga successiva se viene raggiunto il margine del contenitore.
Con le proprietà ItemHeight e ItemWidth impostiamo quanto spazio riservare per la visualizzazione di ogni singolo elemento.
<WrapPanel ItemHeight="40" ItemWidth="90">
<WrapPanel.Background>
<LinearGradientBrush StartPoint="0.4,-0.6" EndPoint="0.4,2">
<LinearGradientBrush.GradientStops>
<GradientStop Color="#FDFF0C00" Offset="0"/>
<GradientStop Color="#FCFF9A00" Offset="0.35"/>
<GradientStop Color="#FCFF3800" Offset="0.42"/>
<GradientStop Color="#FDFFE500" Offset="0.87"/>
<GradientStop Color="#FCFFFFEA" Offset="1"/>
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</WrapPanel.Background>
<Button HorizontalAlignment="Center" VerticalAlignment="Center">Button 1</Button>
<Button>Button 2</Button>
<Button>Button 3</Button>
<Button>Button 4</Button>
<Button>Button 5</Button>
<Button>Button 6</Button>
<Button>Button 7</Button>
<Button>Button 8</Button>
</WrapPanel >
Possiamo specificare l'orientamento della sequenza utilizzando la proprietà Orientation, il valore predefinito è Horizontal. Impostando la proprietà su Vertical la sequenza procede dall'alto verso il basso, disponendo il proprio contenuto su più colonne una volta raggiunto il limite inferiore.
Esiste una forma specializzata di StackPanel chiamata VirtualizingStackPanel che si dimostra particolarmente utile in scenari dove gli elementi figli da creare dipendono da una fonte dati.
Non potendo determinare a priori il numero degli elementi, potenzialmente numerosi, VirtualizingStackPanel genera solo gli elementi effettivamente visibili.
Questo meccanismo migliora le prestazioni dell'interfaccia utente, evitando al sistema il processo oneroso di generazione di elementi dell'interfaccia che poi non verrano visualizzati.
DockPanel
Con il DockPanel gli elementi figli vengono posizionati lungo uno dei margini del contenitore tramite l'attached property Dock. Ad esempio se impostato su Top, l'elemento viene allineato al margine superiore, Left a sinistra, Right destra e Bottom al margine inferiore.
La posizione degli elementi figlio è determinata dal loro ordine d'inserimento, poiché l'attached property Dock viene valutata sullo spazio rimanente dopo il posizionamento degli elementi precedenti.
<DockPanel LastChildFill="True">
<Border Height="20px" Background="BurlyWood" BorderBrush="Black" BorderThickness="2" DockPanel.Dock="Top">
<TextBlock>Testata</TextBlock>
</Border> <Border Height="20px" Background="BurlyWood" BorderBrush="Black" BorderThickness="2" DockPanel.Dock="Bottom">
<TextBlock>Footer</TextBlock>
</Border>
<Border Background="Chocolate" BorderBrush="Black" BorderThickness="2" DockPanel.Dock="Top">
<TextBlock>Centro</TextBlock>
</Border>
</DockPanel>
Se la proprietà LastChildFill è impostata a true l'ultimo elemento riempie lo spazio rimanente.
Contenuti dell'articolo
- Pagina 1
- Pagina 2
- Pagina 3
- Pagina 4
- Pagina 5
Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.








Difficoltà
Stampa
Download 


10annidi.ASPItalia.com: iscriviti alla competizione e vinci fantastici premi ogni mese!
