Hari ini, ketika saya menggunakan program WPF yang saya tulis sebelumnya di bawah Win8, saya menemukan bahwa efek Win8 sekarang didukung (ingat bahwa versi .NET 4.0 sebelumnya tidak didukung). Karena kontrol WPF digambar sendiri dan tidak dikendalikan oleh tema sistem, artinya, .NET 4.5 hadir dengan file gaya tema Win8, dan masuk akal bahwa gaya ini juga dapat digunakan di bawah Win7.
Saya menaruh . Beberapa jalur topik yang didukung di bawah Net 4.5 diekstraksi sebagai berikut:
Win8(AeroLite): /PresentationFramework.AeroLite, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35; komponen/tema/aerolite.normalcolor.xaml Win7 (Aero): /PresentationFramework.Aero, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35; komponen/tema/aero.normalcolor.xaml WinXP Royale: /PresentationFramework.Royale, version=4.0.0.0, culture=neutral, PublicKeyToken=31bf3856ad364e35; komponen/tema/royale.normalcolor.xaml WinXP Biru (Luna): /PresentationFramework.Luna, version=4.0.0.0, culture=neutral, PublicKeyToken=31bf3856ad364e35; komponen/tema/luna.normalcolor.xaml WinXP Silver (Luna): /PresentationFramework.Luna, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35; komponen/tema/luna.metallic.xaml WinXP Luna: /PresentationFramework.Luna, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35; komponen/tema /luna.homestead.xaml Win98 (Klasik): /Kerangka Presentasi. Klasik, Versi=4.0.0.0, Budaya=netral, PublicKeyToken=31bf3856ad364e35; komponen/tema /classic.xaml Catatan: Saya mengambil . Jalur file gaya bersih 4.5, lainnya. Jalur versi Net mungkin sedikit berbeda, tetapi pada dasarnya keluar saat Anda menggunakan ILSpy untuk melihatnya.
Dengan jalur gaya ini, Anda dapat menerapkan gaya global saat startup untuk merender efek AeroLite Win8 di 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);
- }
Salin kode
|