首页 > 解决方案 > 如何创建一个特定的类来打开 NavigationPages 的详细信息?

问题描述

我正在尝试创建一个特定的类,它将集中打开我的页面,这个类有一个方法来打开 NavigationPage 的详细信息,但它总是抛出一个我不知道如何修复的异常。

我该如何解决这个问题?

调用类打开详细信息

private void ListViewClick(object sender, ItemTappedEventArgs args){
            MenuItem item = args.Item as MenuItem;
            IsPresented = false;
            new OpenPage().open(item.Id);                    
        }

特定类将打开 NavigationPage 的详细信息

public class OpenPage : MasterDetailPage{
    public void open(int id){  
        Detail.Navigation.PushAsync(new MyPage());
    }
}

例外

Unhandled Exception:

System.NullReferenceException: Object reference not set to an instance of an object.

标签: xamarin

解决方案


解决了这个问题。我刚刚将 MasterDetailPage 作为参数传递,最后它可以按我的意愿工作。我的解决方案如下

public class OpenPage{
    public void open(int id, MasterDetailPage mdp){
        switch (id){
            case 0:
                mdp.Detail.Navigation.PushAsync(new ProdutosUsuarioView());
                break;
        }        
    }

}//close class

推荐阅读