Xamarin.Forms的Prism NavigationService OnNavigatedFrom / OnNavigatedTo

时间:2016-10-03 14:50:42

标签: xamarin.forms prism

我们正在尝试使用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时不会触发

1 个答案:

答案 0 :(得分:1)

所以发生的事情是当你调用GoBackAsync时,你实际上是回到了TabbedPage,而不是实际的Tab。现在,您可以在实际的TabbedPage上实现INavigationAware,然后将您的参数传递给代码隐藏中选定的Tab的VM。不是最佳的,但它现在可以工作。实际上有一个关于GitHub网站讨论处理TabbedPages时的各种问题以及导航过程中的孩子的讨论。你可以在这里关注它:

https://github.com/PrismLibrary/Prism/issues/650