如何将一个完整的深色主题放入我的 UWP?

How to put a complete dark theme into my UWP?

我正在尝试制作一个可以更改主题的 UWP 应用程序。我使用的是指令RequestedTheme = ElementTheme.Dark;,但这只会改变“基本项目”,我说的是背景和文字。
textBox、ContentDialog 等未进入深色模式。
我想找到一种方法将应用程序中的所有项目“变暗”,而不仅仅是文本和背景。
希望有什么办法。

您可以在应用程序和元素级别设置主题。

如果您想在应用程序级别设置它,则必须在应用程序启动时完成(在 App.xaml.cs 构造函数中)。此设置无法在运行时更改。

要在运行时切换主题,您可以在控件上使用RequestedTheme 属性。这会将主题应用于视觉层次结构中的控件及其子项。这可以在运行时随时切换。要使所选主题应用于整个应用程序,您需要将其设置在顶级可视元素上 - 理想情况下是 window:

的根元素
var root = (FrameworkElement)Window.Current.Content;
root.RequestedTheme = ElementTheme.Dark;

通常,window 的内容是 Frame,但更一般地,它可以是任意的 FrameworkElement