Xamarin:将页面加载为对象

时间:2017-02-23 17:29:28

标签: c# visual-studio xamarin

更新:我编辑了程序,现在问题是它没有识别子部分和按钮类中的类

public App()
    {
        MainPage = new NavigationPage(new buttonPage());
        NavigationPage.PushAsync(new buttonPage.hello());
    }

和同一文件上的buttonPage

  public class buttonPage : ContentPage
{
    public void hello()
    {
        Button hi = new Button
        {
            Text = "GO",
            HorizontalOptions = LayoutOptions.Center,
            VerticalOptions = LayoutOptions.Center
        };
        Content = new ContentPage()
        {
            children = { hi }
        };

    }
}

1 个答案:

答案 0 :(得分:2)

您需要一个NavigationPage来包装您的主页面,以便您可以转换到其他页面。

如果您希望MenuPage有一个后退按钮,那么您可以使用PushAsync,如果您想要它替换当前页面 - PushModalAsync

另外:将您的页面拆分为单独的类和文件,很快就会变得太乱以至于无法维护页面内的页面内容

public class App: Application{
  public App(){
    MainPage = new NavigationPage(new ButtonPage());
  }
...
}

public class ButtonPage : ContentPage{
...
  async void OnButtonClicked(object sender, EventArgs args){
     await Navigation.PushModalAsync(new MenuPage());
  }
}