在 XAML winrt 应用中,是否可以仅将深色主题应用于一个元素

本文关键字:应用于 元素 一个 应用 winrt XAML 是否 | 更新日期: 2023-09-27 17:57:11

我正在使用播放器框架媒体播放器,我把它放在黑色背景下,但该应用程序使用浅色主题。 我想将黑暗主题应用于这一个元素。

这可能吗?

在 XAML winrt 应用中,是否可以仅将深色主题应用于一个元素

这在 WinRT 中目前是不可能的。如果是浅色主题中的黑色背景,您必须定义自己的样式并将其合并到特定容器的资源中(在您的情况下是 Gird)。

是的,您可以将元素放置在网格中并将网格的背景设置为黑色。 这将有效地始终使元素的背景是黑色的,即使应用了"浅色"主题。

我还没有检查它是否有效,但您可以尝试在您的项目中包含深色主题资源字典,该字典应该位于(或附近)"c:''Program Files (x86)''Windows Kits''8.0''Include''winrt''xaml''design"中,并将其设置为网格的合并字典。也许这会覆盖您为应用程序的其余部分设置的浅主题词典。

另一种方法是修改媒体播放器中使用的所有控件的模板,以匹配其深色主题版本。Blend 可能在那里非常有用,因为您可以打开 Blend 的两个实例,并轻松比较控件的基线深色主题版本和自定义深色主题版本中使用的颜色。