【问题标题】:Change systray icon colors更改系统托盘图标颜色
【发布时间】:2014-04-03 01:10:36
【问题描述】:

我想更改系统托盘中图标的颜色(或者要预先调整大小,将它们设置为深色主题 - 以使用白色图标)。

在我的应用中,我有特定的配色方案,我正在使用它。我将系统托盘的背景颜色(您的电池、信号强度、wifi 强度等...)显示设置为特定颜色,当我使用深色主题时,它工作正常。

但是当我将手机更改为浅色主题时,我想使用白色图标,因为我的系统托盘设置为深色背景(感觉与应用程序单一),但系统托盘中的图标仍然是深色的无论我将它设置为哪种颜色。

我在 XAML 中设置它,这是代码:

...
shell:SystemTray.IsVisible="True"
shell:SystemTray.BackgroundColor="#FF222222"
shell:SystemTray.ForegroundColor="#FFFFFFFF">

我做错了什么。甚至可以更改前景色主题吗?

【问题讨论】:

  • 去掉不透明度=> #222222

标签: c# windows-phone-8


【解决方案1】:

我认为您可能引用了错误的程序集。这可以通过使用Microsoft.Phone.Shell;assembly=Microsoft.Phone 对您有所帮助

您可以简单地在 XAML 代码中使用它

<phone:PhoneApplicationPage
...
xmlns:phoneshell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
phoneshell:SystemTray.IsVisible="True"
phoneshell:SystemTray.BackgroundColor="Blue">

【讨论】:

  • 不,我引用的程序集是xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"。我的问题不在于背景,设置背景有效,设置前景没有响应。
  • @mishan:你试过像'Black'这样简单的颜色吗?设置#-----
  • 是的,不工作。但正如我正在考虑的那样,我可能正在模拟器中对其进行测试。它可能在实际手机上工作。在手机从测试人员那里回来并再次测试之前,我需要稍等片刻。
【解决方案2】:

您可以从代码中尝试:

SystemTray.ForegroundColor = new System.Windows.Media.Color() { R = _r, G = _g, B = _b };

【讨论】:

    猜你喜欢
    • 2011-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多