Xamarin.forms 如何一次排除多个(全部)情态动词?

Xamarin.forms 如何一次排除多个(全部)情态动词?,xamarin.forms,Xamarin.forms,有没有一种方法可以消除多个模态,或者一个一个地消除这样的模态:Navigation.modalpopsync()?对于模态,您必须逐个消除,因为它位于模态堆栈上 对于导航堆栈,可以使用Navigation.PopToRootAsync() 您还可以尝试不等待导航.modalpopsync()并将动画作为false传递 您可以在此论坛帖子中找到更多详细信息-对于模态,您必须逐个执行,因为它位于模态堆栈上 对于导航堆栈,可以使用Navigation.PopToRootAsync() 您还可以尝试不等

有没有一种方法可以消除多个模态,或者一个一个地消除这样的模态:
Navigation.modalpopsync()

对于模态,您必须逐个消除,因为它位于
模态堆栈上
对于导航堆栈,可以使用
Navigation.PopToRootAsync()

您还可以尝试不等待
导航.modalpopsync()
并将动画作为false传递


您可以在此论坛帖子中找到更多详细信息-

对于模态,您必须逐个执行,因为它位于
模态堆栈上
对于导航堆栈,可以使用
Navigation.PopToRootAsync()

您还可以尝试不等待
导航.modalpopsync()
并将动画作为false传递


你可以在这个论坛的帖子中找到更多细节-

我实际上已经写了一些东西来弹出所有模态。试试看

int numModals = Application.Current.MainPage.Navigation.ModalStack.Count;
for (int currModal = 0; currModal < numModals; currModal++)
{
    await Application.Current.MainPage.Navigation.PopModalAsync();
}
int numModals=Application.Current.MainPage.Navigation.ModalStack.Count;
对于(int currModal=0;currModal
我实际上已经写了一些东西来弹出所有模态。试试看

int numModals = Application.Current.MainPage.Navigation.ModalStack.Count;
for (int currModal = 0; currModal < numModals; currModal++)
{
    await Application.Current.MainPage.Navigation.PopModalAsync();
}
int numModals=Application.Current.MainPage.Navigation.ModalStack.Count;
对于(int currModal=0;currModal
这里他们指出,不等待可能会导致死锁。它说:调用
Task.Wait
可能会导致死锁,如果之前对INavigation.PushModal或INavigation.PopModal的调用尚未完成。但是最好是
Wait
这里他们说不等待可能会导致死锁,它说:调用
Task.Wait
可能会导致死锁,如果之前对INavigation.PushModal或INavigation.PopModal的调用没有完成。但是是的,最好是等待
您也可以将false传递给.PopModalAsync(),这样做不需要动画您也可以将false传递给.PopModalAsync(),这样做不需要动画