首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检测Windows 10光/暗模式?

如何检测Windows 10光/暗模式?
EN

Stack Overflow用户
提问于 2016-08-03 04:48:28
回答 6查看 14.4K关注 0票数 14

我使用Windows.UI.ViewManagement.UISettings获取系统重音颜色,但是这个类似乎没有任何方法或属性用于光/暗模式。我未能找到用于此功能的文档,如何检测此功能?

PS:我正在制作一个JS应用程序,它不能访问Windows.UI.Xaml命名空间。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2017-01-20 12:02:39

我找到了一个更简单的解决方案,它应该也可以在JavaScript应用程序中工作,而不需要Windows组件-- 班级

代码语言:javascript
复制
var uiSettings = new Windows.UI.ViewManagement.UISettings();
var color = uiSettings.getColorValue(
                        Windows.UI.ViewManagement.UIColorType.background
                       );

您得到的颜色要么是黑色表示主题,要么是白色表示灯光主题。

这个类还有非常有用的事件ColorValuesChanged,您可以将它用于在运行时观察主题更改

票数 16
EN

Stack Overflow用户

发布于 2016-08-12 12:03:57

您可以在解决方案中创建Windows组件项目,从那里访问Windows.UI.Xaml命名空间。添加一个像这样检查当前ApplicationTheme的方法。

代码语言:javascript
复制
public sealed class Test
{
    public static string CurrentTheme()
    {
        var isDark = Application.Current.RequestedTheme == ApplicationTheme.Dark;

        if (isDark)
            return "Dark";

        return "Light";
    }
}

在您的javascript应用程序项目中添加对windows运行时组件项目的引用,您可以在任何想检查应用程序主题的地方调用此方法。查看有关创建Windows组件的演练的这里

票数 18
EN

Stack Overflow用户

发布于 2019-10-21 22:13:20

对于Windows 10,注册表的path HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize中的HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize属性的值指定Windows处于暗模式或光模式的位置。

票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38734615

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档