首页 > 解决方案 > 如何在我的 WPF 应用程序中应用当前的 Windows 主题?

问题描述

我正在开发一个 WPF 应用程序。WPF 允许我为所有内容设置样式,但我只希望我的应用程序具有与其他 Windows 应用程序相同的主题。我希望它使用当前的 Windows 主题。这可能吗?

标签: wpfthemes

解决方案


在进行造型时,您将使用画笔和颜色。

如果您希望您的样式符合 Windows 主题,那么您应该确保您使用的所有画笔和颜色都基于 SystemColors。

https://docs.microsoft.com/en-us/dotnet/desktop/wpf/graphics-multimedia/how-to-paint-an-area-with-a-system-brush?view=netframeworkdesktop-4.8

https://docs.microsoft.com/en-us/dotnet/api/system.windows.systemcolors?view=netcore-3.1

您会发现许多默认模板不这样做,而是使用“硬编码”颜色。因此,您必须为所有这些提供您自己的替换模板。

除非您有丰富的 wpf 模板经验,否则您可能会低估将涉及的工作量。

这是很多工作。

如果您查看可用的自定义主题,您会经常发现作者在这里和那里遗漏了控件的一些微妙方面。


推荐阅读