我试图改变应用内“主题”(颜色)。
我这样做是通过如下设置SystemAccentColor来实现的:
public MyPage()
{
Application.Current.Resources["SystemControlHighlightAccentBrush"] = AppPrimaryColourBrush;
Application.Current.Resources["SystemAccentColor"] = AppPrimaryColourBrush.Color;
this.InitializeComponent();
}
然后我在我的代码中的其他位置更改了AppPrimaryColorBrush,然后转移到MyPage。
我遇到的问题是这不适用于所有元素 - 例如我的ToggleSwitch背景没有反映在新颜色中,但是当我将鼠标悬停在ToggleSwitch上时,鼠标悬停颜色就是新颜色。
我禁用了页面缓存。
有没有人遇到过同样的问题?
方面问题: 我注意到有很多应用程序无需重新加载页面(重新登录页面)即可完成此操作。有没有一种简单的方法来实现这一点,而无需将所有控件样式重新绑定到新的可观察对象? (让我知道我是否应该将其转移到另一个问题)
感谢您的帮助!