Pillole di XAML Implicit Style

di Marco Leoncini, in Windows 8,

In qualsiasi progetto che coinvolga XAML ci troviamo a lavorare con gli Style. Li utilizziamo per impostare colori, margini e molto altro. Il loro utilizzo è utile in ogni scenario, ed utilizzati in modo intelligente ci permettono di apportare modifiche, anche sostanziali in tutta l'applicazione semplicemente modificano un file.

Ad esempio se abbiamo all'interno di un contenitore, come ad esempio uno StackPanel, più controlli e possibile impostare il margine tra di loro utilizzando uno style.

<StakPanel>
<TextBlock Text="riga 1" StaticResource="{MyResource}"/>
<TextBlock Text="riga 2" StaticResource="{MyResource}"/>
<TextBlock Text="riga 3" StaticResource="{MyResource}"/>
</StakPanel>

Questo approccio è sicuramente migliore rispetto alla definizione inline della proprietà Margin. Ma ha il difetto di essere molto verbosa.

L'alternativa ce l'offre la possibilità di creare uno stile implicito e di definirlo a livello di risorsa locale.

<StackPanel.Resources>
<Style TargetType="TextBlock>
<Setter Property="Margin" 
 Value="12" />
</Style>
</StackPanel.Resources>
<TextBlock Text="riga 1" />
<TextBlock Text="riga 2" />
<TextBlock Text="riga 3" />
<TextBlock Text="riga 3" />
</StackPanel> 

Personalmente preferisco questo tipo di approccio. Mi permette di definire localmente una risorsa, in questo caso uno style che non ha valenza globale, ma che verrà utilizzato solo all'interno di quel particolare contenitore.

Inoltre semplicemente impostando la proprietà BaseOn possiamo utilizzare uno style definito a livello generale, così da avere ad esempio, una continuità con il resto dell'applicazione.

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Nella stessa categoria
I più letti del mese