我无法在网站上找到我需要的内容,所以我的问题如下: 如果我浏览这样的页面:A - > B - > C(从页面B对所选车辆进行SQLite数据库更新) - > B(删除更新的车辆)。现在,当我按下硬件后退按钮'System.NullReferenceException'时发生。所以我想要硬件按钮让我回到'B'之前的第一页。例如:A - > B - > C - > B(向后导航) - > A或D - > B - > C - > B(向后导航) - > D等我该如何解决这个问题?
答案 0 :(得分:0)
我这样解决了: 我在页面B(VehiclesPage.xaml)上创建了public static int'pageIndex',我可以从另外4个页面访问页面B,所以我在从每个页面导航到B之前更改索引。例如:
From A->B
VehiclesPage.pageIndex = 1;
this.NavigationService.Navigate(new Uri("/View/VehiclesPage.xaml", UriKind.Relative));
From D->B
VehiclesPage.pageIndex = 2;
this.NavigationService.Navigate(new Uri("/View/VehiclesPage.xaml", UriKind.Relative));
etc...
VahiclesPage.xaml.cs上的方法:
protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e)
{
base.OnBackKeyPress(e);
switch (pageIndex)
{
case 1:
NavigationService.Navigate(new Uri("/View/RefuelingPage.xaml", UriKind.Relative));
break;
case 2:
NavigationService.Navigate(new Uri("/View/OtherCostsPage.xaml", UriKind.Relative));
break;
case 3:
NavigationService.Navigate(new Uri("/View/StatisticsPage.xaml", UriKind.Relative));
break;
case 4:
NavigationService.Navigate(new Uri("/View/CalculatorPage.xaml", UriKind.Relative));
break;
}
}