Alessandro Del Sole's Blog

{ A programming space about Microsoft® .NET® }
posts - 1908, 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: utilizzare i temi di Windows XP su Vista

Dopo aver visto in questo precedente post come utilizzare il tema grafico Windows Aero in applicazioni Windows Presentation Foundation eseguite su Windows XP, in questo post vediamo il contario, ossia utilizzare i temi di XP in applicazioni WPF che vengono eseguite su Windows Vista.

In Visual Studio 2005, dopo aver creato un nuovo progetto WPF vuoto, dovete aggiungere un riferimento all'assembly PresentationFramework.Luna.dll. Questo assembly incapsula gli oggetti necessari all'utilizzo dei temi di Windows XP. Fatto questo, passate al file App.xaml all'interno del quale dovrete aggiungere la seguente risorsa:

    <Application.Resources>
      <ResourceDictionary Source="/presentationframework.luna;component/themes/luna.metallic.xaml" />
    </Application.Resources>

I temi di XP sono tre: Blue, Green e Metallic, quest'ultimo è quello che andiamo a utilizzare nel nostro esempio. Riprendendo lo stesso identico codice del post precedente, digiteremo quanto segue:

  <Grid>
    <Grid.RowDefinitions>
      <RowDefinition />
      <RowDefinition />
      <RowDefinition />
    </Grid.RowDefinitions>
    <Button Grid.Row="0" Margin="10,10,10,10" Name="Button1" Height="52" VerticalAlignment="Top">Pulsante Luna Metallic</Button>

    <ComboBox Grid.Row="1" Margin="10,10,10,10" Text="Combobox Luna Metallic" Height="30">
      <ComboBoxItem>Elemento 1</ComboBoxItem>
    </ComboBox>

    <DockPanel Grid.Row="2" LastChildFill="True">
      <Menu DockPanel.Dock="Top" VerticalAlignment="Top">
        <MenuItem Header="File">
          <MenuItem Header="Apri" />
          <MenuItem Header="Salva"/>
        </MenuItem>

      </Menu>
    </DockPanel>
  </Grid>

Se avete seguito correttamente i vari passaggi, vi renderete conto che i temi vengono utilizzati anche dal designer. In ogni caso, avviando l'applicazione, questo è il risultato che si ottiene:

    

Come potete osservare, l'applicazione eseguita su Windows Vista riceve i temi di Windows XP (ad eccezione, come già detto, delle finestre che sono gestite dal sistema operativo). Anche in questo caso il namespace Microsoft.Windows.Themes costituisce la base per lo studio di questi particolari oggetti.

Alessandro

Print | posted on lunedì 5 novembre 2007 20:16 | Filed Under [ Windows Presentation Foundation ]

Powered by:
Powered By Subtext Powered By ASP.NET