在 Windows Phone 8.1 上等待结果时禁止导航
本文关键字:结果 禁止 导航 等待 Windows Phone | 更新日期: 2023-09-27 18:31:48
我想通过在等待未完成时按"后退"按钮或任何导航事件来防止更改当前页面。因为然后发生异常,它应该显示在同一页面中,在另一种情况下,很难理解什么操作会生成此异常
private async void AppBarButton_Click(object sender, RoutedEventArgs e)
{
MessageDialog dialog = null;
try
{
progressRing.IsActive = true;
this.IsEnabled = false;
commandBar1.IsEnabled = false;
await GlobalVars.API.Call(CC.ChangeDate, date);
var notify = new MessageDialog("Done");
await notify.ShowAsync();
}
catch (Exception ex)
{
dialog = new MessageDialog(ex.Message);
}
finally
{
progressRing.IsActive = false;
this.IsEnabled = true;
commandBar1.IsEnabled = true;
}
if (dialog != null) await dialog.ShowAsync(); // must be shown in the same page
}
您可以使用以下方法拦截后退按钮:
protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e)
{
e.Cancel = true;
}
显然,你可以在那里做任何你想做的事情。