Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 19503|Antwoord: 1

[WPF] Laat je WPF-programma Win8-stijl thema's renderen onder Win7

[Link kopiëren]
Geplaatst op 08-12-2015 16:22:51 | | | |


Vandaag, toen ik een WPF-programma gebruikte dat ik eerder onder Win8 had geschreven, ontdekte ik dat Win8-effecten nu worden ondersteund (onthoud dat de vorige versie van .NET 4.0 niet werd ondersteund). Aangezien de besturing van WPF zelf is getekend en niet wordt aangestuurd door het systeemthema, dat wil zeggen, .NET 4.5 wordt geleverd met Win8-themastijlbestanden, en het is logisch dat deze stijl ook onder Win7 gebruikt kan worden.

Ik zet . Verschillende onderwerppaden die onder Net 4.5 worden ondersteund, worden als volgt geëxtraheerd:

Win8(AeroLite): /PresentationFramework.AeroLite, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35; component/themes/aerolite.normalcolor.xaml
Win7 (Aero): /PresentationFramework.Aero, versie=4.0.0.0, cultuur=neutraal, PublicKeyToken=31bf3856ad364e35; component/themes/aero.normalcolor.xaml
WinXP Royale: /PresentationFramework.Royale, versie=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=neutral, PublicKeyToken=31bf3856ad364e35; component/themes/luna.metallic.xaml
WinXP Luna: /PresentationFramework.Luna, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35; component/thema's /luna.homestead.xaml
Win98(Classic): /PresentationFramework. Classic, Version=4.0.0.0, Culture=neutraal, PublicKeyToken=31bf3856ad364e35; component/thema's /classic.xaml
Opmerking: ik neem de . Net 4.5-stijl bestandspad, andere paden. Het pad van de Net-versie kan iets anders zijn, maar het komt eigenlijk naar voren als je ILSpy gebruikt om het te zien.

Met deze stijlpaden kun je de globale stijl bij het opstarten toepassen om het AeroLite-effect van Win8 in Win7 te renderen:


  1. protected override void OnStartup(StartupEventArgs e)
  2.     {
  3.         var uri = new Uri("/PresentationFramework.AeroLite, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35;component/themes/AeroLite.NormalColor.xaml", UriKind.Relative);
  4.         App.Current.Resources.Source = uri;
  5.         base.OnStartup(e);
  6.     }
Code kopiëren






Vorig:.net implementeert een eenvoudige webserver met behulp van HttpListener
Volgend:Het lijkt erop dat deze plek al lange tijd niet is bijgewerkt, en ik zal de C-taal in de toekomst elke dag bijwerken.
 Huisbaas| Geplaatst op 08-12-2015 16:23:23 |
Dit is het. Het .Net 4.5-programma dat bij het Net Framework wordt geleverd, kan worden gebruikt door de code die ik hierboven heb geschreven te kopiëren.
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com