2014-06-17 89 views
0

在wp7應用程序中,我只需調用Web瀏覽器任務。但是當我按下後退按鈕時,它會關閉任務,但也會關閉wp7應用程序。那麼,我該如何回到應用程序?如果您從您的應用程序啓動WebBrowserTask(與後退按鈕或別的東西也沒關係。)如何在啓動Web瀏覽器任務後回到wp7應用程序?

WebBrowserTask task = new WebBrowserTask(); 
task.Uri = new Uri("myUri", UriKind.RelativeOrAbsolute); 
task.Show(); 

回答

0

,用戶將與後退按鈕關閉瀏覽器後返回到您的應用程序在默認情況下。 您的代碼在重新激活時會引發異常,然後崩潰。 要測試這個,只需用F5運行它,你會看到你是否得到一個異常。

+0

我正在使用PhoneApplicationService.Current.State傳遞頁面之間的數據。我不知道爲什麼,但是這引起了30行的聲明異常。我只是使用 PhoneApplicatipnService.Current.State.Remove(stringkey),它工作正常。感謝提示,因爲異常不在錯誤列表中,所以我必須使用調試點。 – jackjop

+0

很高興爲你工作:) –

0

好吧,當我問的問題,我有事情在Windows手機沒有任何線索7.

因此,如果您導航到一個新的頁面或開始新的任務(如Web瀏覽器),然後單擊後面按鈕,它會返回到調用方法的頁面(導航或新任務)。這沒有問題。

但是,如果導航回來或從任務返回到應用程序時出現異常,則該程序會與Debugger.Stop()App.xaml.cs中崩潰。

我使用PhoneApplicationService.Current.State來存儲數據,因爲我在頁面間傳遞這些數據。但這種方式應用程序只存儲您正在使用的線程的數據。

嗯,我有問題,因爲當我開始一個Web瀏覽器任務時,應用程序刪除了我用PhoneApplicationService.Current.State存儲的數據。當我從任務回來,我用的是這個代碼

string str = PhoneApplicationService.Current.State["some_key"]; 

但數據均已經被刪除,所以它試圖獲取值,但不能做到這一點,所以它產生的異常。

導航頁面到頁面,但啓動任務時,不會出現此問題。

所以我的建議是如果你想存儲數據,你可以使用IsolatedStorageSettings.ApplicationSettings。你可以找到一個參考here

這是一個很好的方法,因爲您不僅可以存儲當前的數據,還可以在關閉後打開應用程序時使用數據。

相關問題