Xamarin.forms Xamarin在框架内形成导航

Xamarin.forms Xamarin在框架内形成导航,xamarin.forms,Xamarin.forms,来自UWP的发展,我想知道是否有可能在Xamarin形式的框架内进行导航。我在文档中看到框架元素具有INavigation属性,所以我尝试了以下代码: MyFrame.Navigation.PushAsync(new Page1()); 但是,当我试图在Android上执行此代码时,会出现以下错误: System.InvalidOperationException:'全局不支持PushAsync 在Android上,请使用导航页面 但当我这么做的时候: public App() { I

来自UWP的发展,我想知道是否有可能在Xamarin形式的框架内进行导航。我在文档中看到框架元素具有INavigation属性,所以我尝试了以下代码:

MyFrame.Navigation.PushAsync(new Page1());
但是,当我试图在Android上执行此代码时,会出现以下错误:

System.InvalidOperationException:'全局不支持PushAsync 在Android上,请使用导航页面

但当我这么做的时候:

public App()
{
    InitializeComponent();
    MainPage = new NavigationPage(new MainPage());
}
导航无法按预期工作,因为它是全局的,不在框架内。我们必须有一个全球导航,还是不可能有一个特定的导航?目标是在应用程序中有一个静态部分和一个进行导航的部分


例如,使用Uno平台,我们可以使用UWP框架并在其内部执行导航,因此我想知道为什么Xamarin表单中不可能使用UWP框架。

我们可以在自定义框架中定义一个类型为INavigation的属性

public class MyFrame:Frame
{
    public INavigation CurrentNavigation { get; private set; }

    public MyFrame (INavigation navigation)
    {
        CurrentNavigation = navigation;
    }

}
在主页上
好的,谢谢你的快速回答。但是,我应该在哪里声明我的navigationpage,以便导航可以在框架内执行,而不是全局执行?有必要将主页设置为navigationpage。好的,这样就不可能在Xamarin表单中实现我想要的功能:/i我会将您的响应标记为答案,这让我意识到我的请求无法实现。
public MainPage()
    {
        InitializeComponent();
        MyFrame myFrame = new MyFrame(this.Navigation);
        myFrame.CurrentNavigation.PushAsync(new Page1());

    }