3
電話機の戻るボタンを使用して戻るときに、どのようにViewModelを更新できますか?MVVMを使用して戻るときにViewModelをリフレッシュする方法
私は電話機の戻るボタンを使用していますが、NavigationService.GoBack()を呼び出すと同じですが、スタックの前のページに移動しますが、コンストラクタはViewまたはViewModelでは呼び出されません。
電話機の戻るボタンを使用して戻るときに、どのようにViewModelを更新できますか?MVVMを使用して戻るときにViewModelをリフレッシュする方法
私は電話機の戻るボタンを使用していますが、NavigationService.GoBack()を呼び出すと同じですが、スタックの前のページに移動しますが、コンストラクタはViewまたはViewModelでは呼び出されません。
基本ページクラスにOnNavigatingToイベントをフックし、ViewModelでメソッドを呼び出すことができます。あなたがページを離れる前に同じことを行うことができます
public void OnNavigatingTo(object sender, eventargs e)
{
var vm = this.DataContext as BaseViewModel;
if(vm != null)
{
vm.Initialize();
}
}
をページ
:私は私と一緒にVSを持っていませんが、擬似コードは次のようになります。MyBasePAgeに
public void OnNavigatingFrom(object sender, eventargs e)
{
var vm = this.DataContext as BaseViewModel;
if(vm != null)
{
vm.Save();
}
}
私が持っていました_Loadedフラグを追加して初期ページのロード時にInitializeを呼び出さないようにします。ありがとうございました。たぶん私は初期化()の代わりにリフレッシュ()を呼び出す必要があります – Tyler
PhoneApplicationPagesはどのようにしてベースページから継承できますか? – Alan