ページ間を移動する際に、前後に移動する機能や「ホーム」ページがあることがわかります。しかし、私が必要とするのは、戻ることができるようにすることですが、ユーザーはもうアクセスできないはずのページを飛ばします。 http://social.msdn.microsoft.com/Forums/en-US/winappswithcsharp/thread/3819f389-3bfc-4c59-a919-272927fc9229Windows 8のナビゲーションスタックからポップページを読み込むApp
GetNavigationStackを使ってみましたが、シリアル化できず、NavigationParameterとして渡すオブジェクトが原因で失敗します。 2つのパラメータを渡すためにタプルを使用する必要がありますが、これはシリアル化できないため、ナビゲーションスタックを編集して手動でページを削除することはできません。
は、私は、このWinRT - How to ignore or delete page from navigation historyを発見し、ページがLayoutAwarePage.cs
(Visual Studioのことで生成されたすべての画面から継承したクラスは、)私は追加で
飛ばしされることになっていた場合、私は設定できブール値が含まれると考えていましたprotected bool CanGoBackToThisPage { get; set; }
このページにアクセスしたくない場合に設定することができますが、現在のページで何かをやり遂げるまでページを再度閲覧できるようにしたいと思っていることがあります。私はあなたがpreviousFrame.CanGoBackToThisPage = true
のような何かをすることができるとは思わない。また、あなたがアクセスできるオブジェクトは、実際のページオブジェクトにアクセスすることはできませんが、代わりにいくつかのサマリーオブジェクトがあり、このブール値をそのサマリーオブジェクトにどうやって取得するのか分かりません。
ナビゲーションスタックから以前/現在のページを削除する簡単な方法を知っている人はいますか?これは本当に一般的な問題であるように思えるので、私はマイクロソフトがそれをやるための何らかの方法を与えていないと考えるのに苦労しています。私は、質問を投稿する前にそれを考えていなかった理由を
手動でナビゲーション履歴を編集しようとすると悪い考えです。 1つ前にナビゲートして、後ろをナビゲートし続ける必要があるかどうかを確認してください。 – mydogisbox