2013-03-16 87 views
0

現在我有幾個頁面的應用程序,其中用戶使用ListPicker選擇某些值,這些值保存到公共字符串變量中。當用戶到達最後一頁時,幾個文本塊控件讀取字符串變量並顯示字符串。與此同時,顯示一個計時器,當用戶到達最後一頁時開始計時。如果用戶重新啓動應用程序,如何恢復狀態?

現在,如果用戶通過按主頁按鈕離開應用程序,然後使用應用程序切換器返回到該應用程序,則最後一頁顯示順暢,所有文本塊顯示其變量並且計時器尚未停止。但是,如果用戶從主屏幕重新啓動應用程序而不是切換到該屏幕,則所有變量都將丟失,並且應用程序將從第一頁開始。

我想要做的是保存字符串變量和計時器,並讓應用程序在啓動時加載變量if!= null。如果它們存在,並且應用程序能夠加載它們,請導航到最後一頁並顯示它們。否則,如果沒有要加載的變量,只需繼續正常的操作即可。

我該如何去做這件事?我讀過關於孤立存儲和保存狀態的內容,但說實話,還沒有完成任何事情,這真的讓我發瘋。 任何幫助將不勝感激。

+0

該應用的目標是7.1還是8.0? – 2013-03-18 18:39:26

回答

0

您應該實施快速應用程序簡歷。 首先,你需要在WMAppManifest.xml設置ActivationPolicy =「恢復」

下一頁 走進App.xaml.cs在「應用」添加類: 私人BOOL復位 你應該再有一種方法初始化初始化RootFrame的PhoneApplication。補充一點:

RootFrame.Navigating += RootFrame_Navigating; 
RootFrame.Navigated += RootFrame_Navigated; 

然後你可以去添加這些方法:

void RootFrame_Navigating(object sender, NavigatingCancelEventArgs e) 
{ 
     if (reset && e.IsCancelable && e.Uri.OriginalString == "/MainPage.xaml") 
    { 
     e.Cancel = true; 
     reset = false; 
    } 
} 

void RootFrame_Navigated(object sender, NavigationEventArgs e) 
{ 
    reset = e.NavigationMode == NavigationMode.Reset; 
} 

如果實施該得當,你的應用程序應該從你的最後一頁簡歷。

相關問題