2012-03-12 7 views

Odpowiedz

14

Możesz przejść do strony początkowej aplikacji Windows Phone z kodu.

Usuń „DefaultTask” wpis z WMAppManifest

Usuń atrybut NavigationPage z „DefaultTask” w WMAppManifest, aw przypadku uruchomienie aplikacji użyć coś podobnego na przykład poniżej, aby przejść do strona po uruchomieniu.

private void Application_Launching(object sender, LaunchingEventArgs e) 
    { 
     if (registered) 
     { 
      ((App)Application.Current).RootFrame.Navigate(new Uri("/<your start page>.xaml", UriKind.Relative)); 
     } 
     else 
     { 
      ((App)Application.Current).RootFrame.Navigate(new Uri("/<your registration page>.xaml", UriKind.Relative)); 
     } 

    } 

Musisz tylko zdecydować, jak chcesz ustalić, czy ktoś już się zarejestrował.

+0

Nie można usunąć pozycji DefaultTask. Możesz jednak usunąć z niego atrrybucję NavigationPage. –

+0

Ach tak, dzięki za poprawkę. Zaktualizuję wpis. –

+0

Ta metoda działa dobrze dla mnie. Dzięki! – Nico

1

Sądzę, że nie zastanawiałeś się nad tym, konfiguracja jest całkiem łatwa! Kiedy rejestruje się użytkownik, można ustawić zmienną w ustawieniach określających, że użytkownik już się zarejestrował. Po uruchomieniu aplikacji oceń to ustawienie i jeśli zarejestrowany użytkownik wyświetla stronę rejestru, w przeciwnym razie strona logowania. Przykład:

//After (succesful) registration 
Properties.Settings.Default.HasRegistered = true; 
Properties.Settings.Default.Save(); 

//Check the value 
var hasRegistered = Properties.Settings.Default.HasRegistered; 
if(hasRegistered) 
    //show Login 
else 
    //show Registration 

Można również użyć IsolatedStorageSettings.ApplcationSettings to zrobić. Poniższy kod to tylko przykładowy kod, musisz podać potwierdzenie, jeśli ustawienia już istnieją przy pierwszym uruchomieniu aplikacji i ustawić domyślną wartość "false" dla tego ustawienia, jeśli jeszcze nie nastąpiła rejestracja.

//After registration 
var settings = IsolatedStorageSettings.ApplicationSettings; 
if (settings.Contains("HasRegistered")) 
    settings["HasRegistered"] = true; 
settings.Save(); 

//Check value 
var settings = IsolatedStorageSettings.ApplicationSettings; 
if (settings.Contains("HasRegistered")) 
{ 
    var registered = bool.Parse(settings["HasRegistered"]); 
    if(registered) 
     //show login 
    else 
     //show registration 
} 

Nadzieja to pomaga!

+1

Myślę, że nie zastanawiałeś się nad tym, ponieważ powyższa odpowiedź jest znacznie łatwiejsza. ;-) – MEMark

Powiązane problemy