1 回答

TA贡献2036条经验 获得超8个赞
将页面传递给Navigate function将使导航功能更加通用。下次您想导航新页面时,只需将新页面传递给它即可。
private void JournalSelected(object sender, SelectedItemChangedEventArgs e)
{
if (e?.SelectedItem == null) return;
JournalGroupList.SelectedItem = null;
JournalHistoryViewPage journalHistoryViewPage = App.Container.Resolve<JournalHistoryViewPage>();
journalHistoryViewPage.BaseViewModel.JournalGroup = e.SelectedItem as JournalGroup;
journalHistoryViewPage.BaseViewModel.SelectedPatient = BaseViewModel.SelectedPatient;
Navigate(journalHistoryViewPage);
}
private async void VitalSigns_Tapped(object sender, System.EventArgs e)
{
var vitalSignsViewPage = App.Container.Resolve<VitalSignsViewPage>();
vitalSignsViewPage.BaseViewModel.SelectedPatient = BaseViewModel.SelectedPatient;
Navigate(vitalSignsViewPage);
}
public override async void Navigate(Page page)
{
await Navigation.PushAsync(page, true);
}
如果每个页面都有一个BaseViewModel.SelectedPatient和 具有相同的值,你也可以将它组合成 Navigate 函数,例如:
public override async void Navigate(Page page)
{
page.BaseViewModel.SelectedPatient = BaseViewModel.SelectedPatient;
await Navigation.PushAsync(page, true);
}
- 1 回答
- 0 关注
- 66 浏览
添加回答
举报