无法在Xamarin.Forms中实现导航

问题描述 投票:1回答:1

我在Xamarin.Forms上写了一个应用程序。有一个主要形式,可以从它移动到其他表示。问题是我无法使用页面导航。如何实施? ViewModel我有一个图书馆。我使用MvvmLightLibs向它投掷命令。我看到的所有信息都给出了一个使用INavigation的例子,但它在ViewModel中不可见

enter image description here

c# xamarin mvvm xamarin.forms mvvm-light
1个回答
0
投票

你必须自己实现一个NavigationService,MvvmLight中没有开箱即用的Xamarin.Forms。但是,实现这样的服务非常简单,只需要几种方法即可。我建议你检查this blogpost,它有一个演练,用于构建一个简单的Xamarin.Forms + MvvmLight应用程序。

关键是创建一个像INavigationService这样的界面,它将拥有像NavigateToGoBack这样的方法。然后,您创建一个实现此接口的类,并使用根NavigationPage在整个应用程序中导航。在启动时,您创建一个NavigationService实例并传入它将使用的NavigationPage实例。

如果使用SimpleIoc注册实例,则可以使用构造函数注入 - 在视图模型中,将INavigationService参数添加到构造函数中,框架将传入已注册的实例。

所有这些都在上面链接的博客中得到了证明,所以这是一个很好的起点。

另一个很好的学习来源是this Xamarin Show剧集,其中MvvmLight的创建者Laurent Bugnion自己展示了如何使用Xamarin.Forms框架。

© www.soinside.com 2019 - 2024. All rights reserved.