Nell'esempio precedente utilizzando le attached property Top e Left, posizioniamo i margini del bottone ad un offset di 20 pixel dal margine sinistro e di 50 pixel da quello superiore del Canvas.
Esistono inoltre altre due attached property, Right e Botton, che ci permettono di specificare l'offset rispetto al margine inferiore e destro, ma se le attached property Top e Left sono impostate, quest'ultime hanno la precedenza.
Come abbiamo detto, il pannello Canvas non esegue nessun tipo di posizionamento sui propri figli, ma si limita a renderizzarli nella posizione specificata, anche se già occupata da più elementi.
Per determinare l'ordine di visualizzazione possiamo impostare l'attached property ZIndex e ne consegue che l'elemento figlio con il valore più alto viene visualizzato sopra gli altri.
<Canvas Width="200" Height="200">
<Canvas.Background>
<RadialGradientBrush RadiusX="1.5" RadiusY="1" Center="0.9,1.5" GradientOrigin="0.9,1.5">
<RadialGradientBrush.GradientStops>
<GradientStop Color="#FF473218" Offset="0"/>
<GradientStop Color="#FF978065" Offset="1"/>
</RadialGradientBrush.GradientStops>
</RadialGradientBrush>
</Canvas.Background>
<Button Canvas.Left="20" Canvas.Top="50" Canvas.ZIndex="2" >Button 1</Button>
<!--senza ZIndex questo bottone nasconderebbe il precedente-->
<Button Canvas.Left="20" Canvas.Top="50" Canvas.ZIndex="1" >Button 2</Button>
</Canvas >
StackPanel
Lo StackPanel forma una semplice pila con gli elementi figli, la cui direzione della pila è determinata dalla proprietà Orientation, impostabile su Horizontal o Vertical (valore predefinito).
<StackPanel>
<StackPanel.Background>
<RadialGradientBrush RadiusX="1.5" RadiusY="1.1" Center="0.9,1.5" GradientOrigin="0.9,1.5">
<RadialGradientBrush.GradientStops>
<GradientStop Color="#FF473218" Offset="0"/>
<GradientStop Color="#FF978065" Offset="1"/>
</RadialGradientBrush.GradientStops>
</RadialGradientBrush>
</StackPanel.Background>
<!--Allineamento-->
<Button HorizontalAlignment="Left">Button 1</Button>
<Button HorizontalAlignment="Right">Button 2</Button>
<Button HorizontalAlignment="Left">Button 3</Button>
<Button HorizontalAlignment="Right">Button 4</Button>
<!--Nessuna impostazione-->
<Button>Button 5</Button>
<Button>Button 6</Button>
<!--Margine-->
<Button Margin="3">Button 7</Button>
<Button Margin="10,0,10,0">Button 8</Button>
</StackPanel >
L'esempio precedente mostra l'uso di uno StackPanel al fine di formare una pila di bottoni, facendo anche uso dell'allineamento e dei margini.
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!
