Ich habe eine sehr ähnliche Situation zu this guys question in dem ich eine Login-Seite haben, die meine MainPage.xaml Datei ist, aber ich habe eine andere Seite namens SetPassword.xaml, die ich laden möchte wenn ein Benutzer noch kein Passwort festgelegt hat. Dies ist das erste Mal, dass die App nach der Installation geladen wird.Windows Phone 8.1 überprüfen, ob Passwort gesetzt, sonst laden neue Seite
Ich habe Stunden damit verbracht, verschiedene Lösungen auszuprobieren (einschließlich der, mit der ich verlinkt habe), aber ich komme einfach nicht weiter und es scheint, dass viele der Lösungen entweder für WP7 oder WP8 sind und nichts Ähnliches für das neue WP8.1 gelöst.
Dies ist die grundlegende Überprüfung, mit Windows.Storage, die ich tun, um zu sehen, ob ein Passwort festgelegt wurde oder nicht.
Windows.Storage.ApplicationDataContainer localSettings = Windows.Storage.ApplicationData.Current.LocalSettings;
Windows.Storage.StorageFolder localFolder = Windows.Storage.ApplicationData.Current.LocalFolder;
if (localSettings.Values["myPassword"] == null)
{
Debug.WriteLine("Password not set");
this.Frame.Navigate(typeof(SetPassword));
}
else
{
Debug.WriteLine("Password is set, continuing as normal");
}
Wenn ich dies zu public MainPage()
Klasse hinzufügen habe ich kein Problem in der App zurückkehren „Passwort nicht gesetzt“ in den Debug-Meldungen jedoch die this.frame.Navigate(typeof(SetPassword))
Navigation nie die SetPassword Ansicht lädt.
Ich habe auch diese Methode in der OnNavigatedTo
mit genau den gleichen Ergebnissen versucht.
In meiner App.xaml-Datei habe ich auch wieder eine Reihe verschiedener Methoden ausprobiert, mit denselben Ergebnissen. Ich kann die Debug-Nachricht erhalten, aber nicht die Navigation, nach der ich suche. Ich untersuchte die Implementierung einer Methode unter Application_Launching
over here sowie die Implementierung der bedingten Navigation unter RootFrame.Navigating+= RootFrameOnNavigating;
over here, aber mir fehlt eindeutig etwas.
Hoffentlich können Sie schlauer Leute mir helfen, meine Navigation basierend auf einem bedingten Wert arbeiten zu lassen?
Nun, der Konstruktor Ihrer Startseite ist kein Ort, um eine Navigation aufzurufen. Überprüfen Sie dies, es könnte hilfreich sein. http://blogs.msdn.com/b/ptorr/archive/2010/08/28/redirecting-an-initial-navigation.aspx Was haben Sie auch in Bezug auf 'RootFrameOnNavigating' versucht, das nicht funktioniert hat? Zeigen Sie etwas Code, geben Sie Ihrem Problem eine bessere Beschreibung. Veröffentliche nicht nur Links zu anderen Fragen. – Pantelis
Ich bin ernsthaft peinlich, ich habe es herausgefunden und werde jetzt die Lösung posten. – justinhartman