Сьогодні, коли я скористався програмою WPF, яку раніше писав під Win8, я виявив, що ефекти Win8 тепер підтримуються (пам'ятайте, що попередня версія .NET 4.0 не підтримувалася). Оскільки керування WPF самонамальоване і не контролюється системною темою, то .NET 4.5 постачається з файлами стилю Win8, і логічно припустити, що цей стиль також можна використовувати у Win7.
Я додав . Декілька тематичних шляхів, підтримуваних у Net 4.5, виділені наступним чином:
Win8(AeroLite): /PresentationFramework.AeroLite, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35; component/themes/aerolite.normalcolor.xaml Win7 (Aero): /PresentationFramework.Aero, Version=4.0.0.0, Culture=neutral, 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, версія=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(Classic): /PresentationFramework. Classic, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35; component/themes /classic.xaml Примітка: я складаю . Шлях до файлів у стилі net 4.5 та інші. Шлях у версії Net може трохи відрізнятися, але він фактично з'являється, коли ви використовуєте ILSpy для перегляду.
За допомогою цих стилістичних шляхів ви можете застосувати глобальний стиль при запуску, щоб відобразити ефект AeroLite Win8 у 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);
- }
Копія коду
|