アプリの基礎としてプリズムUWPハンバーガーの例を使用する。 ViewModelは、Prism.Windows.Mvvm.ViewModelBaseを継承してPrism.Windows.Navigation.INavigationAwareから実装します。メインシェルでは、連絡先、about、settingsなどのボタンを持つタブを持つ分割ビューがあります。しかし、ユーザーが分割ビューから「約」のようなものを選択しても連絡先ページが表示され、保存されていないデータが汚れていると、保存していないデータを破棄するかどうかをユーザーに尋ね、保存していないデータを破棄したくない場合はナビゲーションイベントをキャンセルします。 UWPは、WPFで利用できるナビゲーション利便性インタフェースのいずれも持っていないようです。何か案は?UWPプリズムアプリ内のナビゲーションをキャンセルする
0
A
答えて
0
このサンプルはまだテストされていませんが、NavigatingFromEventArgsを使用してCancel(キャンセル)をtrueに設定すると、ナビゲーションをキャンセルしようとするテストケースがあるようです。
public override void OnNavigatingFrom(NavigatingFromEventArgs e, Dictionary<string, object> viewModelState, bool suspending)
{
e.Cancel = _isNavigationDisabled;
base.OnNavigatingFrom(e, viewModelState, suspending);
}
関連する問題
- 1. UWPテンプレート10内のナビゲーションをキャンセルする
- 2. UWPアプリケーションでのナビゲーション
- 3. JSFのボタン・ナビゲーションのキャンセル
- 4. フレームによるUWPナビゲーション
- 5. WebコンテキストUWPアプリケーションでのシステムナビゲーションのキャンセル
- 6. UWP KeyRoutedEventArgs.handledがバックスペースキーをキャンセルしない
- 7. ナビゲーション・ドロワー(UWP)からレイアウトを変更
- 8. UWPナビゲーション(Template10)、ピボット制御、複数のフレーム
- 9. 子ページフレームからメインページフレームへのUWPナビゲーション
- 10. Win 10 UWPアプリケーションがページ間のナビゲーションにRAMを消費する
- 11. キャンセルAJAXリクエストにより後続のナビゲーションが遅くなる
- 12. UWPアプリケーションでのナビゲーションでメモリリークが発生する
- 13. Uwpナビゲーションの例とコントロールに焦点を合わせる
- 14. アンドロイド内のタブ内のナビゲーション
- 15. ルート内のタスクをキャンセルする
- 16. UWP - uwp内の特定のピクセルのアルファを変更する
- 17. UWPの電話機とデスクトップ/ラップトップの異なるナビゲーション動作
- 18. VUEJS内のナビゲーションを更新する
- 19. カードウィジェット内のTabBarナビゲーション
- 20. マルチレベルナビゲーション+ナビゲーション内のドキュメントリンク
- 21. jquery tabs - タブ内のナビゲーション内のタブ内容を保存する
- 22. WebBrowser要素で現在のナビゲーションをキャンセルまたは破棄する方法
- 23. UWP Xbox WebViewを使用した場合の1ページのナビゲーション
- 24. Webページへのナビゲーションがキャンセルされました - ASP.NET&ABC PDF
- 25. Observable.create内のHTTPリクエストをキャンセルします。
- 26. UWPオーバーフローボタンの内部
- 27. UWP内のAdaptive AutoSuggBox
- 28. UWP内のリソースファイル(.resw)
- 29. UWPのバックスタック深度ナビゲーションの制御方法
- 30. uwp C#非同期タスクをキャンセルして再実行
はいは既にこの、2つの問題を試してみました。まず、この非同期がタスクを返すようにすることはできません。これにより、OnNavigatingFromオーバーライドが解除されますが、ユーザーが保存されていないデータのみを失いたいかどうかを確認するダイアログにShowAsyncメソッドがあります。第2に、コンテンツビューモデルでダイアログを削除してナビゲーションをキャンセルしても、ナビゲーションイベントを開始したメニュービューモデルでイベントが既に完了して実行されています。 – Locorobzilla
これを処理する方法がわかりません。非同期メソッドを呼び出す(最適な方法ではないことがわかっています) – Depechie
結果は詳細ページビューモデルでは機能しますが、ナビゲーションメニューはこれを無視して、モデル。ブライアン?誰でも?これはほぼ2週間続いています。すでにGithubで尋ねられましたが、閉鎖され、SOに戻ってきました。 – Locorobzilla