c# - tutorial - what is uwp app
Cómo navegar correctamente backstack en la aplicación de tienda universal Windows Phone 8.1 (1)
Su problema es went MP->L->AL->L and hit back, they should go to MainPage and not back to AddLocations
¿no?
La solución es: cuando termine de agregar la ubicación, debe ir a la página de ubicaciones desde la página AddLocation.
Pero no debe usar Frame.Navigate(typeof(LocationPage));
para hacer esto.
Deberías usar Frame.GoBack();
, Así que la página AddLocation se eliminará de BackStack auto.
Aquí está el escenario para la navegación de mi página:
MainPage (MP) <==> Ubicaciones (L) <==> AddLocation (AL)
No quiero que el usuario vaya alguna vez a AddLocation al presionar el botón Atrás en el teléfono.
Si están en MP y responden, deberían salir de la aplicación.
Si fueron MP-> L y responden, deberían ir a MainPage.
Si fueron MP-> L-> AL y devuelven el golpe, deberían ir a Ubicaciones.
Si fueran MP-> L-> AL-> L y respondieran, deberían ir a MainPage y no de nuevo a AddLocations.
No, tengo los navegadores estándar en la carpeta Común y luego he agregado este código a la página de Ubicaciones para que esto suceda:
protected override void OnNavigatedTo(NavigationEventArgs e)
{
this.navigationHelper.OnNavigatedTo(e);
var bs = Frame.BackStack.Where(b => b.SourcePageType.Name == "MainPage").FirstOrDefault();
if (bs!= null)
{
Frame.BackStack.Clear();
Frame.BackStack.Add(bs);
}
}
Esto parece ser un truco terrible para mí y estoy seguro de que hay alguna forma compatible / diseñada para hacer esto que no conozco. Soy muy nuevo en WinRT y Xaml.