【发布时间】:2016-10-03 14:50:42
【问题描述】:
我们正在尝试使用 OnNavigatedFrom 和 OnNavigatedTo,但在需要时未调用“OnNavigatedTo”
ViewModelOne:
_navigationService.NavigateAsync("ViewModelPageTwo", useModalNavigation: false);
ViewModelTwo:
var parameters = new NavigationParameters()
{
{
"Pesquisa",
TextoPesquisa
},
{
"DataEnvioInicial",
DataEnvioInicio
},
{
"DataEnvioFim",
DataEnvioFim
},
{
"DataHistoricoInicio",
DataHistoricoInicio
},
{
"DataHistoricoFim",
DataHistoricoFim
},
{
"TodasAsCaixas",
PesquisaEmTodasCaixas
}
};
_navigationService.GoBackAsync(parameters);
问题是 ViewModelOne -> OnNavigatedTo 在来自 ViewModelTwo 的 GoBackAsync 时没有触发
【问题讨论】:
-
需要更多信息来帮助您缩小问题范围。首先,您使用的是哪个版本的 Prism for Xamarin.Forms。您使用的是什么版本的 Xamarin.Forms。您当前的导航堆栈的结构是什么?上一页是什么类型的页面?你什么时候打电话给 GoBackAsync?请提供更多详细信息。
-
@BrianLagunas Xamarin.Forms:2.3.1.114 |棱镜:6.2.0。结构是: MasterDetailPage 是 MainPage,在带有 TabbedPage 的 NavigationPage 内部,在 TabbedPage 内部,我们有 ViewModelOne 作为子级,正在制作 _navigationService.NavigateAsync("PageTwo", useModalNavigation: false)... 当 PageTwo GoBackAsync 方法 OnNavigatedTo在 ViewModelOne 中没有被触发。
-
所以您正在从 TabbedPage 内的 Page 导航到 PageTwo,它位于 nvigationPage 内?这是一个非常有趣且令人困惑的页面层次结构。我不确定我是否有一个清晰的理解,但是尝试将 INavigationAware 放在 TabbedPageViewModel 上,看看它是否会出现。
-
是的,当 GoBackAsync 访问我的 TabbedPage 时...我认为当我制作 _navigationService.NavigateAsync("ViewModelPageTwo", useModalNavigation: false);我在同一个导航...有办法点击我的 ViewModelOne 吗?谢谢@BrianLagunas
标签: xamarin.forms prism