Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 19503|Yanıt: 1

[WPF] WPF programınızın Win7 altında Win8 tarzı temaları render etmesine izin verin

[Bağlantıyı kopyala]
Yayınlandı 8.12.2015 16:22:51 | | | |


Bugün, daha önce Win8 altında yazdığım bir WPF programını kullandığımda, Win8 efektlerinin artık desteklendiğini fark ettim (önceki .NET 4.0 sürümünün desteklenmediğini unutmayın). WPF'nin kontrolleri kendi kendine çizildiği ve sistem teması tarafından kontrol edilmediği için, yani .NET 4.5 Win8 tema tarzı dosyalarla birlikte gelir ve bu tarzın Win7 altında da kullanılabileceği mantıklıdır.

Ben . Net 4.5 kapsamında desteklenen birkaç konu yolu aşağıdaki şekilde çıkarılmıştır:

Win8(AeroLite): /PresentationFramework.AeroLite, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35; component/themes/aerolite.normalcolor.xaml
Win7 (Aero): /PresentationFramework.Aero, Sürüm=4.0.0.0, Kültür=Nötr, 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 Gümüş (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/themes /luna.homestead.xaml
Win98(Klasik): /PresentationFramework. Classic, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35; bileşen/temalar /classic.xaml
Not: Ben . Net 4.5 tarzı dosya yolu, diğerleri. Net versiyonunun yolu biraz farklı olabilir, ama temelde ILSpy kullanıp onu gördüğünüzde ortaya çıkıyor.

Bu stil yollarıyla, Win8'in AeroLite etkisini Win7'de render etmek için global stili başlatmada uygulayabilirsiniz:


  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.     }
Kopya kodu






Önceki:.net, HttpListener kullanarak basit bir web sunucusu uygular
Önümüzdeki:Görünüşe göre burası uzun zamandır güncellenmemiş ve gelecekte C dilini her gün güncelleyeceğim.
 Ev sahibi| Yayınlandı 8.12.2015 16:23:23 |
Bu işte. Net Framework ile gelen .Net 4.5 programı, yukarıda yazdığım kodu kopyalayarak kullanılabilir.
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com