Alessandro Del Sole's Blog

{ A programming space about Microsoft® .NET® }
posts - 1909, comments - 2047, trackbacks - 352

My Links

News

Your host

This is me! Questo spazio è dedicato a Microsoft® .NET®, di cui sono molto appassionato :-)

Cookie e Privacy

Disabilita cookie ShinyStat

Microsoft MVP

My MVP Profile

Microsoft Certified Professional

Microsoft Specialist

Xamarin Certified Mobile Developer

Il mio libro su VB 2015!

Pre-ordina il mio libro su VB 2015 Pre-ordina il mio libro "Visual Basic 2015 Unleashed". Clicca sulla copertina per informazioni!

Il mio libro su WPF 4.5.1!

Clicca sulla copertina per informazioni! E' uscito il mio libro "Programmare con WPF 4.5.1". Clicca sulla copertina per informazioni!

These postings are provided 'AS IS' for entertainment purposes only with absolutely no warranty expressed or implied and confer no rights.
If you're not an Italian user, please visit my English blog

Le vostre visite

I'm a VB!

Guarda la mia intervista a Seattle

Follow me on Twitter!

Altri spazi

GitHub
I miei progetti open-source su GitHub

Article Categories

Archives

Post Categories

Image Galleries

Privacy Policy

WPF e l'ereditarietà degli stili

In Windows Presentation Foundation, gli stili supportano l'ereditarietà. E' possibile, infatti, definire uno stile di base e stili che da questo ereditano. L'unica differenza, è che, nella definizione dello stile di base, non è possibile specificare il tipo di controllo cui lo stile è destinato, o meglio l'oggetto destinatario dello stile può essere solo di tipo IFrameworkInputElement.

Il seguente esempio può essere utile per capire. Si definisce in primo luogo lo stile di base, tramite XAML, sempre all'interno delle risorse:

    <Style x:Key="MyStyle">
      <Setter Property="Button.FontFamily" Value="Courier New"/>
      <Setter Property="Button.FontSize" Value="12" />
      <Setter Property="Button.Background" Value="Orange" />
      <Setter Property="Button.Width" Value="150" />
      <Setter Property="Button.Height" Value="75" />
    </Style>

Lo stile definisce alcune caratteristiche del font più lo sfondo e le dimensioni del pulsante. Osservate come, in merito a quanto accennato all'inizio, sia necessario specificare il controllo cui appartiene la proprietà, invece di utilizzare un unico attributo TargetType. Il secondo passaggio, è quello di definire lo stile ereditato:

    <Style x:Key="MyInheritedStyle" BasedOn="{StaticResource MyStyle}">
      <Setter Property="Button.Foreground" Value="Blue" />
    </Style>

Come potete osservare, l'attributo BasedOn specifica lo stile da cui ereditare. Abbiamo così tutte le proprietà dello stile di base, più il colore di primo piano del carattere aggiunto in questa fase.

Il codice per implementare un pulsante, poi, può essere il seguente:

      <Button Style="{StaticResource MyInheritedStyle}" Margin="10,10,10,10">
        Ciao WPF!
      </Button>
Vi basterà avviare l'applicazione per vedere un pulsante a sfondo arancio e colore di primo piano blu.

Alessandro

Print | posted on venerdì 14 settembre 2007 21:20 | Filed Under [ Windows Presentation Foundation ]

Powered by:
Powered By Subtext Powered By ASP.NET