我在app.When約3-4個不同的網頁我的應用程序的主頁顯示並按下開始鍵,設備appears.Now時的主屏幕上開始按鈕不同的行爲後退鍵被按下,它帶回我的應用程序的主頁,這是預期的行爲。但如果我進入我的應用程序並打開第二或第三頁,然後執行相同的開始和返回按鈕操作,那麼我的應用程序不是從它離開的頁面恢復。而是,在我的應用程序打開之前打開的應用程序。 我該如何糾正這種行爲?應用顯示了在應用程序的不同頁面
1
A
回答
1
正如Loki Kriasus指出,這種類型的行爲肯定聽起來像你正在嘗試使用恢復您的應用程序時,尚未初始化的對象。查爾斯Petzold的免費電子書Programming Windows 7對這個首發117
頁上的你在做什麼很大的部分,我會猜手機狀態將綽綽有餘。電話狀態與ASP.NET中的會話狀態類似。它只是一個帶有字符串鍵的(可序列化的)對象的字典,並不會在您的應用程序啓動時保留,但當您的應用程序從Back Stack導航到時,它會被恢復。
下面是一個例子的它的使用恢復一些名爲myObject的自定義對象:
private CustomObject myObject;
protected override void OnNavigatedFrom(NavigationEventArgs args)
{
//Save to State when leaving the page
PhoneApplicationService.Current.State["myObject"] = myObject;
base.OnNavigatedFrom(args);
}
protected override void OnNavigatedTo(NavigationEventArgs args)
{
if (PhoneApplicationService.Current.State.ContainsKey("myObject"))
{
//Restore from State
myObject = (CustomObject)PhoneApplicationService.Current.State["myObject"];
}
else
{
//No previous object, so perform initialization
myObject = new myObject();
}
}
如果你需要存儲的設置在您的應用程序的所有實例,然後看看IsolatedStorageSettings這是爲這個完美的。還有其他選擇取決於您的需求(請查看上面的鏈接書中的示例)。我猜想在第二頁和第三頁中使用如上所示的頁面狀態可以解決您的問題。
+0
感謝名單了很多@ theChrisKent..It真的幫助我理解我要保存完整page.Is它的可能的狀態做到這一點functionality.But? – Shaireen 2011-03-11 04:31:34
相關問題
- 1. 顯示PDF - 應用程序頁面SharePoint
- 2. Thymeleaf表不顯示在Spring Boot應用程序的HTML頁面
- 3. Windows平臺(UWP)應用程序 - 主頁.xaml頁面不顯示
- 4. 單頁應用程序不會顯示在asp.net web應用程序的iframe中
- 5. 在一個根應用程序中顯示不同的Web應用程序
- 6. 在用戶批准應用程序之前顯示頁面
- 7. 根據Phonegap android應用程序的需求顯示不同的登錄頁面?
- 8. 在頁面頂部顯示您的應用程序
- 9. 在開始頁面顯示自己的Windows 8應用程序
- 10. 頁面顯示在應用面板
- 11. 顯示來自不同應用程序的最後10個訪問頁面
- 12. 聚合物網站應用程序與Node.js不顯示頁面
- 13. 新應用程序 - 頁面選項卡 - 不顯示內容?
- 14. Web應用程序中不同頁面的不同背景色
- 15. 我的新應用程序劑量顯示在搜索,並在應用程序配置文件頁面上,它不會顯示「去應用程序」按鈕
- 16. 在應用引擎上顯示爲空白頁面的Facebook應用程序iframe
- 17. AppStore顯示相同的應用程序
- 18. 將iPad應用程序轉換爲通用應用程序的iOS不顯示iPhone的應用程序界面
- 19. 如何在首次啓動應用程序時顯示頁面
- 20. 在應用程序頁面上內嵌顯示facebook apprequests表單
- 21. 在頁面底部顯示應用程序欄
- 22. 在IOS應用程序中顯示Facebook頁面訂閱源
- 23. 在Flash應用程序中顯示ASP.NET頁面
- 24. 在phonegap應用程序中顯示動態html頁面
- 25. 在WP7應用程序中顯示錯誤頁面
- 26. 在ASP.Net MVC Web應用程序中顯示HTML頁面
- 27. iOS - 在HTML頁面顯示應用程序版本
- 28. Openshift應用程序顯示空白頁
- 29. Facebook應用程序顯示空白頁
- 30. Django應用程序顯示空首頁
你能告訴你的導航事件處理程序的第二頁(如果您有任何)和PhoneApplicationService激活/停用事件處理程序? – 2011-03-10 11:12:03
未使用電話激活/禁用的事件處理程序,並且導航事件處理程序正在執行特定於該頁面的操作。與base.OnNavigatedTo()和base.OnNaviageetdFrom() – Shaireen 2011-03-10 11:17:13
我的猜測是,你可以有裏面我提到的方法之一引發未處理的異常。如果你沒有使用激活的事件來恢復狀態,那麼你的應用程序重啓後可能會試圖使用一些被破壞的對象,從而導致異常? – 2011-03-10 11:28:29