WPFにおけるPrism集中講座(7) ラストスパート
22-ConfirmCancelNavigation Descriptionには Use the IConfirmNavigationReqest interface to confirm or cancel navigation とあります。 実際に実行したら、ViewA と ViewB を切り替えるボタンがありますが… ViewA から ViewB に切り替える時にはメッセージボックスが出るのに、 ViewB から ViewA に切り替える時にメッセージボックスが出ない、え?これ欠陥品じゃないの? ああ、ソースコードを読んだら納得しました。 ModuleA 内の ViewModels\ViewAViewModel.cs using System.Windows; namespace ModuleA.ViewModels { public class ViewAViewModel : BindableBase, IConfirmNavigationRequest { public ViewAViewModel() { } public void ConfirmNavigationRequest(NavigationContext navigationContext, Action<bool> continuationCallback) { bool result = true; if (MessageBox.Show("Do you to navigate?", "Navigate?", MessageBoxButton.YesNo) == MessageBoxResult.No) result = false; continuationCallback(result); } public bool IsNavigationTarget(NavigationContext navigationContext) { return true; } public void OnNavigatedFrom(NavigationContext navigationContext) { } public void OnNavigatedTo(NavigationContext navigationContext) { } } } ModuleA 内の ViewModels\ViewBViewModel....