我在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. 應用程序不顯示
- 5. 在用戶批准應用程序之前顯示頁面
- 6. 根據Phonegap android應用程序的需求顯示不同的登錄頁面?
- 7. 頁面顯示在應用面板
- 8. 聚合物網站應用程序與Node.js不顯示頁面
- 9. 新應用程序 - 頁面選項卡 - 不顯示內容?
- 10. Web應用程序中不同頁面的不同背景色
- 11. 我的新應用程序劑量顯示在搜索,並在應用程序配置文件頁面上,它不會顯示「去應用程序」按鈕
- 12. AppStore顯示相同的應用程序
- 13. 在IOS應用程序中顯示Facebook頁面訂閱源
- 14. 在ASP.Net MVC Web應用程序中顯示HTML頁面
- 15. 在頁面底部顯示應用程序欄
- 16. 在Flash應用程序中顯示ASP.NET頁面
- 17. Facebook應用程序顯示空白頁
- 18. 在ios應用程序中的不同頁面之間導航
- 19. 通用Windows應用程序顯示爲對話框頁面
- 20. Facebook的帆布應用程序 - 顯示頁面的問題
- 21. 轉到應用程序時,應用程序配置文件頁面? (不能添加應用程序頁面?)
- 22. 在不同地區的頁面上顯示不同的Facebook選項卡應用程序
- 23. Rails應用程序顯示一個錯誤的根頁面
- 24. 春顯示應用程序/ * + XML而不是應用程序/ XML
- 25. 在不同的網站上顯示一個ASP.net應用程序
- 26. 創建應用程序將不會顯示任何鏈接或網址中的應用程序頁面
- 27. 在不同的應用程序中顯示相同應用程序的模型django
- 28. 根據Django中的應用程序,不同的404頁面
- 29. 我的應用程序不會顯示在我的應用程序抽屜中
- 30. 如何從Silverlight應用程序創建(並顯示)pdf頁面
你能告訴你的導航事件處理程序的第二頁(如果您有任何)和PhoneApplicationService激活/停用事件處理程序? – 2011-03-10 11:12:03
未使用電話激活/禁用的事件處理程序,並且導航事件處理程序正在執行特定於該頁面的操作。與base.OnNavigatedTo()和base.OnNaviageetdFrom() – Shaireen 2011-03-10 11:17:13
我的猜測是,你可以有裏面我提到的方法之一引發未處理的異常。如果你沒有使用激活的事件來恢復狀態,那麼你的應用程序重啓後可能會試圖使用一些被破壞的對象,從而導致異常? – 2011-03-10 11:28:29