2013-07-12 1 views
1

Я создал расширенный заставку для моего приложения для Windows-телефона, но теперь каждый раз, когда я нажимаю на главную страницу, он перезагружает расширенный экран. Можно ли удалить его из стека навигации и позволить приложению выполнить событие application_closing?Windows phone расширенный всплеск назад навигация

код всплеска:

public partial class ExtendedSplashScreen : PhoneApplicationPage 
{ 
    public ExtendedSplashScreen() 
    { 
     InitializeComponent(); 

     //Call MainPage from ExtendedSplashScreen after some delay    
     Splash_Screen(); 
    } 

    async void Splash_Screen() 
    { 
     await Task.Delay(TimeSpan.FromSeconds(3)); // set your desired delay    
     NavigationService.Navigate(new Uri("/Screens/HomeScreen.xaml", UriKind.Relative));  
    } 
+0

Возможный дубликат [Как удалить одну страницу окна с задней стороны экрана?] (Http://stackoverflow.com/questions/10510798/how-to-remove-one-page-of-windows-phone-backstack) –

ответ

0

да, вы можете удалить его из стека обратно, попробуйте это

int a = NavigationService.BackStack.Count(); while (a > 0) { this.NavigationService.RemoveBackEntry(); a = NavigationService.BackStack.Count(); } Здесь а> 0 используется потому, что ничто не должно быть Befour домашней страницы.

0

Поместите этот код в файле HomeScreen.xaml.cs:

protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e) 
{ 
    base.OnNavigatedTo(e); 

    while (this.NavigationService.BackStack.Any()) 
    { 
     this.NavigationService.RemoveBackEntry(); 
    } 
} 

Он очистит backstack, так что выходит из приложения при нажатии на кнопку возврата.

 Смежные вопросы

  • Нет связанных вопросов^_^