Xamarin.forms NavigationParameters-GetNavigationMode()在模拟NavigationParameters时为NULL。

Xamarin.forms NavigationParameters-GetNavigationMode()在模拟NavigationParameters时为NULL。,xamarin.forms,navigation,mocking,prism,static-methods,Xamarin.forms,Navigation,Mocking,Prism,Static Methods,我尝试模拟NavigationParameters,它将GetNavigationMode()设置为NULL。有没有更好的方法来模拟扩展方法呢?这也困扰了我一段时间,我终于找到了至少是一种解决方法的方法。这个问题表明,您实际上可以将内部参数添加到NavigationParameters,但它不会在intellisense中显示。我的测试代码最终看起来像: var navParams = new NavigationParameters(); navParams.AddInternalParame

我尝试模拟NavigationParameters,它将GetNavigationMode()设置为NULL。有没有更好的方法来模拟扩展方法呢?

这也困扰了我一段时间,我终于找到了至少是一种解决方法的方法。这个问题表明,您实际上可以将内部参数添加到NavigationParameters,但它不会在intellisense中显示。我的测试代码最终看起来像:

var navParams = new NavigationParameters();
navParams.AddInternalParameter("__NavigationMode", NavigationMode.Back);

希望这有帮助

这也困扰了我一段时间,我终于找到了至少是一个解决办法。这个问题表明,您实际上可以将内部参数添加到NavigationParameters,但它不会在intellisense中显示。我的测试代码最终看起来像:

var navParams = new NavigationParameters();
navParams.AddInternalParameter("__NavigationMode", NavigationMode.Back);

希望这有帮助

不适合我。但您的参考帮助我找到了一个解决方案,即编译(可能是版本问题,我使用的是
Prism 7.1

var navParams=(inavigationParameters内部)新导航参数();
添加(“导航模式”,导航模式.New);

对我来说不太合适。但是你的参考帮助我找到了一个解决方案,这个解决方案是编译的(可能是版本问题,我使用的是
Prism 7.1

var navParams=(inavigationParameters内部)新导航参数();
添加(“导航模式”,导航模式.New);

正如@thomas kison所指出的,
AddInternalParameter
api似乎不再存在。A只在其答案中显示@batesiic引用的参数

通过解决@esteban chornet的问题来补充@thomas kison的答案,我发现这个解决方案将通过将
INavigationParameters作为
INavigationParameters
参数传入内部
来工作:

//排列:
var navParams=(inavigationParameters内部)新导航参数();
添加(“导航模式”,导航模式.Back);
//行为:
_MyColPageViewModel.OnNavigatedTo(导航参数作为INavigationParameters);
//在给定的NavigationMode的NavigationMode.Back中,断言OnNavigatedTo中应该发生的任何事情

希望这有助于解决问题!

正如@thomas kison所指出的,
AddInternalParameter
api似乎不再存在。A只会在他们的答案中提到@batesiiic引用的参数

通过解决@esteban chornet的问题来补充@thomas kison的答案,我发现这个解决方案将通过将
INavigationParameters作为
INavigationParameters
参数传入内部
来工作:

//排列:
var navParams=(inavigationParameters内部)新导航参数();
添加(“导航模式”,导航模式.Back);
//行为:
_MyColPageViewModel.OnNavigatedTo(导航参数作为INavigationParameters);
//在给定的NavigationMode的NavigationMode.Back中,断言OnNavigatedTo中应该发生的任何事情

希望这有助于解决问题!

如何将
navParams
传递为导航参数?将其转换回NavigationParameters?如何将
navParams
传递为导航参数?将其转换回NavigationParameters?