Windows phone 7 Windows Phone 7后台主题设置-应用程序开发

Windows phone 7 Windows Phone 7后台主题设置-应用程序开发,windows-phone-7,Windows Phone 7,如何在代码中识别手机的“主题”(即亮或暗) 更新: 好的,在做了更多的研究之后,我找到了一些似乎可以满足我需要的东西。然而,也许有更好的方法 想法 以下是我发现的回答我目前问题的答案: var backColor = Resources["PhoneBackgroundColor"]; 目前,检查PhoneBackgroundColor的值似乎是检测主题的公认方法。您可以通过以下代码检查该值,该代码来自 在早期的测试版中,这样做的方法是检查PhoneBackgroundColor的RGB值,正

如何在代码中识别手机的“主题”(即亮或暗)

更新:

好的,在做了更多的研究之后,我找到了一些似乎可以满足我需要的东西。然而,也许有更好的方法

想法

以下是我发现的回答我目前问题的答案:

var backColor = Resources["PhoneBackgroundColor"];

目前,检查
PhoneBackgroundColor
的值似乎是检测主题的公认方法。您可以通过以下代码检查该值,该代码来自


在早期的测试版中,这样做的方法是检查PhoneBackgroundColor的RGB值,正如其他人在这里指出的那样。然而,这种情况已经改变。
现在,执行此操作的首选方法是检查“PhoneLightTheMovibility”的可见性(即使检查RGB值仍然有效):


HTH

检查RGB值有效,但首选新的“PhoneLightTheMovibility”资源-请参阅我的答案。尝试此处提供的主题类:检查RGB值有效,但首选新的“PhoneLightTheMovibility”资源-请参阅我的答案。
private Color lightThemeBackground = Color.FromArgb(255, 255, 255, 255);
private Color darkThemeBackground = Color.FromArgb(255, 0, 0, 0);




private void DisplayState()
{

SolidColorBrush backgroundBrush = Application.Current.Resources["PhoneBackgroundBrush"] as SolidColorBrush;

if (backgroundBrush.Color == lightThemeBackground)
{

// you are in the light theme

}
else
{

// you are in the dark theme

}

}
Visibility v = (Visibility)Resources["PhoneLightThemeVisibility"];
if (v == System.Windows.Visibility.Visible)
{
    // Light theme
}
else
{
    // Dark theme
}