2012-06-18 1 views
2

SystemTray에 문제가 있습니다.SystemTray 숨기기 방법

내 앱에는 파노라마 및 피벗 화면이 있습니다. 그래서 SystemTray를 두 스크린에서 보이지 않게하고 싶습니다.

내 코드이었다

<phone:PhoneApplicationPage shell:SystemTray.IsVisible="False" 

두통 제스처 영화 나 나는 또한 다음을 변경 한

다른 작업처럼 수신 한 후 트레이가 다시 나타납니다 때문에 대부분이었다

shell:SystemTray.Opacity="0" 
shell:SystemTray.ForegroundColor="Transparent" 
shell:SystemTray.IsVisible="True" 

그것은 더 나 빠졌다. 투명한 것으로 설정 했음에도 불구하고 트레이가 흰색으로 표시됩니다.

감사합니다. 그것이 작동하지 않는 경우 코드

 SystemTray.SetForegroundColor(this, (Color)App.Current.Resources["PhoneBackgroundColor"]); 

의 다음 줄을 시도 페이지의 생성자 또는 OnNavigatedTo 기능에,

 SystemTray.IsVisible = false; 

를 사용하여 뒤에 코드에서

+0

당신이 가시 false로 설정 때 표시되는 시스템 트레이를 재현 할 수있는 방법이 있습니까? –

+0

푸시받은 내용이 무엇을 의미합니까? 내 응용 프로그램과 통합 된 푸시 있고 시스템 트레이를 사용하여 피벗/파노라마 컨트롤을 사용할 수 있고 예상대로 원활하게 작동합니다. 문제를 해결하기 위해 더 많은 입력이 필요합니다. – bragboy

답변

2

한번에 설정하여 공개 (Color) App.Current.Resources [ "PhoneBackgroundColor"]는 전경색을 배경색으로 설정하여 투명한 효과를냅니다.

** 사용자 정의 배경을 수동으로 추가하지 않은 경우에만 작동합니다.

작동하지 않는지 알려주세요.

+0

Setting SystemTray.IsVisible = false; 작동하지 않지만 SystemTray의 전경을 앱의 배경과 일치시키는 것은 큰 트릭입니다. 작동합니다! –

0

위로 x391 페이지에서 shell:SystemTray.IsVisible="False"을 삭제하려고 시도하십시오. 그럼 해봐.
이되지 작동하면, 다음 SystemTray.IsVisible = false;

0

를 SystemTray의 가시성 MSDN 당 뒤에있는 코드에서이 방법을 설정해야처럼 메인 페이지로드 이벤트에 뒤에 코드를 사용합니다. 그냥 같은 "보이지 않는"효과를 시뮬레이션하려는 경우

SystemTray.SetIsVisible(this, false); 

또는 막대와 시간을 숨길 수있는 투명 전경색의 대부분을 숨기려면 0으로 불투명도를 설정합니다. 한 가지주의해야 할 점은 컨트롤의 나머지 부분은 컨트롤이 여전히 있음을 알 수 있기 때문에 페이지의 첫 번째 컨트롤의 위쪽 여백을 32 픽셀만큼 위로 조정해야합니다 (예 : 여백 = "0, -32, 0,0)을 XAML에서 false로 설정하는 것과 동일한 효과를 생산 마무리하기. 위해

SystemTray.SetOpacity(this, 0); 
SystemTray.SetForegroundColor(this, Color.FromArgb(0, 0, 0, 0));