Xaml 当导航离开页面时,应用程序栏会隐藏,其背景为手机';s主题(而不是应用程序中定义的主题)

Xaml 当导航离开页面时,应用程序栏会隐藏,其背景为手机';s主题(而不是应用程序中定义的主题),xaml,animation,windows-phone-8,windows-phone,application-bar,Xaml,Animation,Windows Phone 8,Windows Phone,Application Bar,当我在WP8应用程序的页面之间导航时,我注意到作为过渡动画的一部分(使用Telerik的,即“RootFrame=new Telerik.Windows.Controls.RadPhoneApplicationFrame();”),导航页面上的应用程序栏首先被隐藏。这是突然的,时间很短,但仍然很明显 以下是页面的应用程序栏: 这是我回击时同一页面的应用程序栏,即导航离开它。在应用程序栏之前显示的地方,显示的是白色背景。当然,正如我所说,这是一个分裂的时刻,因为在你知道之前,你已经回到了最后一页

当我在WP8应用程序的页面之间导航时,我注意到作为过渡动画的一部分(使用Telerik的,即“RootFrame=new Telerik.Windows.Controls.RadPhoneApplicationFrame();”),导航页面上的应用程序栏首先被隐藏。这是突然的,时间很短,但仍然很明显

以下是页面的应用程序栏:

这是我回击时同一页面的应用程序栏,即导航离开它。在应用程序栏之前显示的地方,显示的是白色背景。当然,正如我所说,这是一个分裂的时刻,因为在你知道之前,你已经回到了最后一页。但这仍然是显而易见的

白色背景似乎是手机主题的背景(其主题为浅色),尽管我已在App.xaml.cs中将根框的背景重置为黑色,并将所有画笔重置为使用深色主题(建议来自:

DarkTheme()中的自定义设置根框背景和重置笔刷似乎在大部分情况下都有效。只有当使用应用程序栏从非默认页面(即不是应用程序登录的页面)转换回另一个页面时,才会出现此问题


知道发生了什么吗?

好的解决方案是将应用程序栏的不透明度设置为0.9999,页面的页脚设置为-100。有点脏,但很管用

我建议你在这里发布你的问题好的解决方案是将应用程序栏的不透明度设置为0.9999,页面的页脚设置为-100。@Bredcrumbs如果你找到了解决方案,那么你可以回答你自己的问题:)哈,不知道我可以/允许。完成:)
public App()
{
    // code here
    RootFrame.Background = new SolidColorBrush(Colors.Black);
    DarkTheme();
}
public void DarkTheme()
{
        ((SolidColorBrush)Resources["PhoneRadioCheckBoxCheckBrush"]).Color = ((SolidColorBrush)Resources["PhoneRadioCheckBoxBorderBrush"]).Color = ((SolidColorBrush)Resources["PhoneForegroundBrush"]).Color = Color.FromArgb(0xFF, 0xFF, 0xFF, 0xFF);
        ((SolidColorBrush)Resources["PhoneBackgroundBrush"]).Color = Color.FromArgb(0xFF, 0x00, 0x00, 0x00);
        ((SolidColorBrush)Resources["PhoneContrastForegroundBrush"]).Color = Color.FromArgb(0xFF, 0x00, 0x00, 0x00);
        ((SolidColorBrush)Resources["PhoneContrastBackgroundBrush"]).Color = Color.FromArgb(0xFF, 0xFF, 0xFF, 0xFF);
        ((SolidColorBrush)Resources["PhoneDisabledBrush"]).Color = Color.FromArgb(0x66, 0xFF, 0xFF, 0xFF);
        ((SolidColorBrush)Resources["PhoneProgressBarBackgroundBrush"]).Color = Color.FromArgb(0x19, 0xFF, 0xFF, 0xFF);
        ((SolidColorBrush)Resources["PhoneTextCaretBrush"]).Color = Color.FromArgb(0xFF, 0x00, 0x00, 0x00);
        ((SolidColorBrush)Resources["PhoneTextBoxBrush"]).Color = Color.FromArgb(0xBF, 0xFF, 0xFF, 0xFF);
        ((SolidColorBrush)Resources["PhoneTextBoxForegroundBrush"]).Color = Color.FromArgb(0xFF, 0x00, 0x00, 0x00);
        ((SolidColorBrush)Resources["PhoneTextBoxEditBackgroundBrush"]).Color = Color.FromArgb(0xFF, 0xFF, 0xFF, 0xFF);
        ((SolidColorBrush)Resources["PhoneTextBoxReadOnlyBrush"]).Color = Color.FromArgb(0x77, 0x00, 0x00, 0x00);
        ((SolidColorBrush)Resources["PhoneSubtleBrush"]).Color = Color.FromArgb(0x99, 0xFF, 0xFF, 0xFF);
        ((SolidColorBrush)Resources["PhoneTextBoxSelectionForegroundBrush"]).Color = Color.FromArgb(0xFF, 0xFF, 0xFF, 0xFF);
        ((SolidColorBrush)Resources["PhoneButtonBasePressedForegroundBrush"]).Color = Color.FromArgb(0xFF, 0xFF, 0xFF, 0xFF);
        ((SolidColorBrush)Resources["PhoneTextHighContrastBrush"]).Color = Color.FromArgb(0xFF, 0xFF, 0xFF, 0xFF);
        ((SolidColorBrush)Resources["PhoneTextMidContrastBrush"]).Color = Color.FromArgb(0x99, 0xFF, 0xFF, 0xFF);
        ((SolidColorBrush)Resources["PhoneTextLowContrastBrush"]).Color = Color.FromArgb(0x73, 0xFF, 0xFF, 0xFF);
        ((SolidColorBrush)Resources["PhoneSemitransparentBrush"]).Color = Color.FromArgb(0xAA, 0x00, 0x00, 0x00);
        ((SolidColorBrush)Resources["PhoneChromeBrush"]).Color = Color.FromArgb(0xFF, 0x1F, 0x1F, 0x1F);
        ((SolidColorBrush)Resources["PhoneInactiveBrush"]).Color = Color.FromArgb(0x33, 0xFF, 0xFF, 0xFF);
        ((SolidColorBrush)Resources["PhoneInverseInactiveBrush"]).Color = Color.FromArgb(0xFF, 0xCC, 0xCC, 0xCC);
        ((SolidColorBrush)Resources["PhoneInverseBackgroundBrush"]).Color = Color.FromArgb(0xFF, 0xFF, 0xFF, 0xFF);
        ((SolidColorBrush)Resources["PhoneBorderBrush"]).Color = Color.FromArgb(0xBF, 0xFF, 0xFF, 0xFF);
    }