14

这是一个 Windows 8 风格的按钮:

这是 .NET 4.5 WPF 应用程序中的一个按钮:

任何想法为什么 WPF 不显示本机 Windows 8 样式按钮?有没有办法解决这个问题?

4

2 回答 2

9

您可以做的是使用HERE中的自定义 WPF 样式。

下面是在多个状态下应用于同一 WPF 应用程序的样式的屏幕截图。上装明显是 Aero 主题,下装则是新应用的款式。

这是XAML的链接。

于 2013-01-07T19:22:43.227 回答
2

WPF 不使用任何本机 Windows 控件 - 它为不同的 Windows 版本提供了自己的控件和样式。在 Windows 7 上,您可以找到以下程序集

PresentationFramework.Aero.dll
PresentationFramework.Classic.dll
PresentationFramework.Luna.dll
PresentationFramework.Royale.dll

我猜想有一个适用于 Windows 8 的新版本。由于 WPF 不是基于本机控件构建的,因此可以在 Windows 7 上拥有 XP 风格的 WPF 应用程序,在 Windows XP 上拥有 Windows 7 风格的应用程序。

如果您想比 WPF 提供的开箱即用更好地匹配本机 Windows 8 UI,您将必须创建自己的样式 - 可能基于 WPF 提供的样式。

于 2013-01-07T19:37:35.640 回答