c# – 如何在Windows 10周年更新或更高版本中使用WPF应用程序中的浅色或深色主题?

我已经编写了一个WPF桌面应用程序,我希望使用Desktop Bridge将其放入Windows应用商店.该应用程序能够在明暗模式下呈现自己,并使用强调色.但是,要成为Windows 10的好公民,我希望从操作系统获取该信息,如果可能的话.我...

我已经编写了一个WPF桌面应用程序,我希望使用Desktop Bridge将其放入Windows应用商店.该应用程序能够在明暗模式下呈现自己,并使用强调色.但是,要成为Windows 10的好公民,我希望从操作系统获取该信息,如果可能的话.

我目前的理解是,我可以从这里获得强调色:

var accentBrush = SystemParameters.WindowGlassBrush;

如何判断Windows 10是处于浅色还是黑暗主题?另外,您建议使用哪种方法来通知用户对亮/暗或强调颜色的偏好变化?

解决方法:

每当Windows 10周年更新或更高版本中的此亮/暗模式设置更改时,都会更新注册表值.关键是:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize

值的名称是:

AppsUseLightTheme

如果是1,那么主题是Light.如果是0,则主题为黑暗.如果我找不到密钥或值,我会假设Light(就像以前版本的Windows一样).

就我而言,林德西值得赞扬.没有这个评论,我没有想到要进行调查.

本文标题为:c# – 如何在Windows 10周年更新或更高版本中使用WPF应用程序中的浅色或深色主题?

基础教程推荐