主题切换关键代码
定义资源颜色Key:
前端定义动态资源(注意一定是动态的):
后台切换资源颜色代码:
Color colorThme = Color.FromArgb((255, 255, 0, 0);#后端定义红色
SolidColorBrush solidColorBrush = new SolidColorBrush(colorThme);
var resources = Application.Current.Resources.MergedDictionaries;
for (int i = 0; i < resources.Count; i++)
{
foreach (object item in resources[i].Keys)
{
string keyName = item.ToString();
if (keyName =="ThemeColor")#资源颜色名称
{
resources[i][item] = solidColorBrush;
break;
}
}
}
自己手动试试吧: