我正在使用winui 3应用程序,当我将主题切换到黑暗模式时,系统上下文菜单(右击标题栏)没有更新为黑暗,所以我需要使用
[DllImport("uxtheme.dll", EntryPoint = "#135", SetLastError = true, CharSet = CharSet.Unicode)]
private static extern int SetPreferredAppMode(int preferredAppMode);
但此代码仅在应用程序运行时才起作用:
SetPreferredAppMode(2); //Force Dark
InitializeComponent();
我需要在运行模式下根据主题变化更新系统上下文菜单. 例如,我需要在按钮单击事件中更改系统上下文菜单主题. 但系统上下文菜单主题不会在按钮单击事件中更新.
怎么啦?有没有其他强制更新系统上下文菜单主题的方法? Windows设置或其他应用程序是如何做到这一点的?