2010年12月1日 星期三

如何獲得 Theme Property

Windows Phone 提供兩種背景風格讓用戶選擇,闇系與光系,
當然在調整了 Theme Background 後,預設的文字色彩也會變成該背景的對比色,

所以若你在開發 App 時選了黑底,又指定了 App 中的文字為白色,
用戶使用你的 App 時若切到白底,很可能就會看到一片白底白字的全白畫面,
最簡單避免的方法就是在每個控制項指定明確且安全的 Foreground 屬性,
可能指定為為藍色或紅色等等黑白背景皆相宜的顏色,
基本上在 Settings / Theme / Accent color 中可以挑選的顏色都是不錯的選擇,
另一種方法就是依造用戶所選的 Theme background 屬性來調整顏色,
有兩種方法可以得知用戶選的 Background 屬性

方法一


if ((Visibility)Application.Current.Resources["PhoneDarkThemeVisibility"] == Visibility.Visible)
{
  // Do dark theme stuff
}
else
{
  // Do light theme stuff
}


方法二


if ((double)Application.Current.Resources["PhoneDarkThemeOpacity"] == 1)
{
  // Do dark theme stuff
}
else
{
  // Do light theme stuff
}


此外更多的屬性可以參考這裡:Theme Resources for Windows Phone

沒有留言:

張貼留言