在xamarin.forms prism中,是否有任何方法可以取消弹出式导航?
例如,我调用导航方法以导航到一个弹出页面。但是由于某些原因,我想在完成导航之前取消该导航。
这是可能的吗?
预先感谢。
您可以使用 IConfirmNavigation
来防止导航,如果结果为false。它不会取消导航,而是要确保在发生导航之前是否可能发生导航(无论如何都更有意义(
您需要将IConfirmNavigation
实现到您的ViewModel:
public class ContactPageViewModel : IConfirmNavigation
{
public bool CanNavigate(NavigationParameters parameters)
{
return true;
}
}
现在,每当您尝试导航时,它将检查此方法以查看CanNavigate
是否为True。
来源:https://prismlibrary.github.io/docs/xamarin-forms/navigation/confirming-navigation.html