Oggi, quando ho usato un programma WPF che avevo scritto prima sotto Win8, ho scoperto che ora gli effetti Win8 sono supportati (ricordate che la versione precedente di .NET 4.0 non era supportata). Poiché i controlli di WPF sono autodisegnati e non controllati dal tema di sistema, ovvero .NET 4.5 include file in stile tema Win8, e è logico pensare che questo stile possa essere usato anche su Win7.
Ho messo . Diversi percorsi tematici supportati da Net 4.5 sono estratti come segue:
Win8(AeroLite): /PresentationFramework.AeroLite, Version=4.0.0.0, Culture=neutrale, PublicKeyToken=31bf3856ad364e35; component/themes/aerolite.normalcolor.xaml Win7 (Aero): /PresentationFramework.Aero, Version=4.0.0.0, Culture=neutrale, PublicKeyToken=31bf3856ad364e35; component/themes/aero.normalcolor.xaml WinXP Royale: /PresentationFramework.Royale, version=4.0.0.0, culture=neutral, PublicKeyToken=31bf3856ad364e35; component/themes/royale.normalcolor.xaml WinXP Blue (Luna): /PresentationFramework.Luna, version=4.0.0.0, culture=neutral, PublicKeyToken=31bf3856ad364e35; component/themes/luna.normalcolor.xaml WinXP Silver (Luna): /PresentationFramework.Luna, Version=4.0.0.0, Culture=neutrale, PublicKeyToken=31bf3856ad364e35; component/themes/luna.metallic.xaml WinXP Luna: /PresentationFramework.Luna, Version=4.0.0.0, Culture=neutrale, PublicKeyToken=31bf3856ad364e35; component/temi /luna.homestead.xaml Win98(Classico): /PresentationFramework. Classic, Version=4.0.0.0, Culture=neutrale, PublicKeyToken=31bf3856ad364e35; component/temi /classic.xaml Nota: sto seguendo il file . Percorso file in stile Net 4.5, altri. Il percorso della versione Net può essere leggermente diverso, ma praticamente si manifesta quando usi ILSpy per vederlo.
Con questi percorsi di stile, puoi applicare lo stile globale all'avvio per renderizzare l'effetto AeroLite di Win8 in Win7:
- protected override void OnStartup(StartupEventArgs e)
- {
- var uri = new Uri("/PresentationFramework.AeroLite, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35;component/themes/AeroLite.NormalColor.xaml", UriKind.Relative);
- App.Current.Resources.Source = uri;
- base.OnStartup(e);
- }
Copia codice
|