我有新部门表格页面 我创建部门,创建了10名员工 在Click Employee上,详细信息会通过以下脚本触发
我得到Android全球不支持PushAsyn,请使用Nagigation页面 但是,如果我一直回到部门页面并进入列表并单击详细信息,则此方法有效 创建时
async void OnItemSelected(object sender, SelectedItemChangedEventArgs args)
{
var item = args.SelectedItem as Employee;
if (item == null)
return;
//None below works
await (App.Current.MainPage).Navigation.PushAsync(new EmployeeDetail(item));
//await Navigation.PushAsync(new EmployeeDetail(item));
//Application.Current.MainPage = new NavigationPage(new EmployeeDetail(item));
}
答案 0 :(得分:0)
根据您的描述,如果要在ContentPages之间使用导航。在COntentPages之间进行导航的方式有两种,一种是使用Navigation.PushAsync(),另一种是使用Navigation.PushModalAsync()。
如果使用Navigation.PushAsync(),请在App.xaml.cs构造函数中为MainPage属性设置导航页实例。
public App()
{
InitializeComponent();
MainPage = new NavigationPage(new Page20());
}
然后,您可以使用以下代码进行导航。
private void ListView_ItemSelected(object sender, SelectedItemChangedEventArgs e)
{
Employee item = e.SelectedItem as Employee;
if(item!=null)
{
Navigation.PushAsync(new Page21(item));
}
}
如果未在App.xaml.cs中为MainPage属性创建导航实例,则
public App()
{
InitializeComponent();
MainPage = new Page20();
}
您需要
private void ListView_ItemSelected(object sender, SelectedItemChangedEventArgs e)
{
Employee item = e.SelectedItem as Employee;
if(item!=null)
{
Navigation.PushModalAsync(new Page21(item));
}
}
有关Xamarin.Forms模态页面的更多详细信息,请查看:
https://docs.microsoft.com/en-us/xamarin/xamarin-forms/app-fundamentals/navigation/modal