2014-09-02 2 views
2

Я разрабатываю приложение, которое предназначено для WP7 с использованием SDK для Windows Phone 8, поэтому оно также совместимо с WP8.WP7: доступ к StatusBar в WP8

Проблема, с которой я столкнулся, заключается в том, что строка состояния на эмуляторе 720P очень высока.

Вот XAML я использую:

<phone:PhoneApplicationPage ... 
shell:SystemTray.BackgroundColor="{StaticResource HeaderBackgroundColor}" 
shell:SystemTray.IsVisible="True"/> 

И вот результат Header without transparency

Если добавить прозрачность, чтобы строка состояния короче я получаю черный прямоугольник.

<phone:PhoneApplicationPage ... 
shell:SystemTray.BackgroundColor="{StaticResource HeaderBackgroundColor}" 
shell:SystemTray.Opacity="0.99" 
shell:SystemTray.IsVisible="True"/> 

Header with transparency


Мой вопрос:

Есть ли способ изменить цвет черного пространства (я предполагаю, что нет никакого способа, чтобы удалить его без таргетинга КР8 только) ? Могу быть с помощью отражения ..

ответ

1

Попробуйте сделать это программно в вашем сСте следующим образом:

SystemTray.BackgroundColor = Colors.Blue; 
SystemTray.ForegroundColor = Colors.DarkGray; 
SystemTray.IsVisible = true; 

Для больше вы могли бы посмотреть на это:

Change System Tray Color Windows Phone

Надеется, что это помогает!

+0

К сожалению, это не помогает мне- код изменяет цвет в системном трее, но черные космические останки , Как я понимаю, черное пространство добавлено, потому что аспектный ракурс экрана на 720p отличается от того, что экран 480 × 800 WP7 –

+0

@KamenDobrev Вы пытались удалить прозрачность? – Kulasangar

+0

Камень Добрев вы пытались скрыть строку состояния? –

1

Вы можете изменить цвет фона SystemTray

shell:SystemTray.IsVisible="True" 
shell:SystemTray.BackgroundColor="Red" 

Или вы можете скрыть SystemTray

shell:SystemTray.IsVisible="False"