Xamarin.Forms 中的导航不起作用

通过将 Mainpage 设置为导航页面或将 Mainpage 设置为另一个内容页面,我尝试了以下解决方案,导航不起作用:

using System.Text;

using System.Threading.Tasks;

using Xamarin.Forms;


namespace App14

{

public partial class MainPage : ContentPage

{

    public MainPage()

    {

        InitializeComponent();

        Application.Current.MainPage = new Page1();



    }



}

}

如果我运行上面的代码,我看不到任何内容该应用程序只是加载并终止


    using System;

        using System.Collections.Generic;

        using System.Linq;

        using System.Text;

    using System.Threading.Tasks;

   using Xamarin.Forms;


   namespace App14

   {

   public partial class MainPage : ContentPage

  {

    public MainPage()

     {

        InitializeComponent();

        App.Current.MainPage = new NavigationPage();

        Application.Current.MainPage.Navigation.PushAsync(new Page1())





    }



}

 }

如果尝试使 MainPage 成为导航页面和 Pushasync 代码,它也将不起作用


慕虎7371278
浏览 262回答 2
2回答

POPMUISE

您的App.xaml.cs,继承自Application应该加载您的,MainPage并且为了导航,它应该包含在NavigationPage.public partial class App : Application{    public App()    {        InitializeComponent();        var navigationPage = new NavigationPage(new MainPage());        MainPage = navigationPage;    }    ...}

Qyouu

看起来您想要启动您的应用程序,其根页面为Page1.如果这是真的,那么您在错误的地方编写导航逻辑。您应该从MainPage's构造函数中删除导航逻辑,并将您的第一页导航写入App.cs类,如下所示:public partial class App : Application{    public App ()    {        InitializeComponent ();        MainPage = new NavigationPage(new Page1 ());    }}否则,如果您想以MainPage根页面启动您的应用程序,然后立即想要推Page1送到导航堆栈,则:public partial class App : Application{    public App ()    {        InitializeComponent ();        var navPage = new NavigationPage(new App14.MainPage());         Application.Current.MainPage = navPage;         navPage.PushAsync(new Page1());    }}有关 Xamarin.Forms 中导航的更多详细信息,请单击此处。
打开App,查看更多内容
随时随地看视频慕课网APP