【发布时间】:2015-03-17 10:10:54
【问题描述】:
我正在使用 windows phone 8.1。在这里我创建简单的两页首页包含两个按钮。
<Grid>
<StackPanel>
<Button x:Name="btnNextPage" Content="Next Page" HorizontalAlignment="Center" Click="btnNextPage_Click" />
<Button x:Name="btnMessageDisplay" Content="Message Display" HorizontalAlignment="Center" Click="btnMessageDisplay_Click" />
</StackPanel>
</Grid>
这里第一个按钮简单地完成从一个页面到另一个页面的导航,第二个是显示简单的消息对话框,如下所示。
MessageDialog msg = new MessageDialog("","");
async private void btnMessageDisplay_Click(object sender, RoutedEventArgs e)
{
msg.Content = "Hello Friends...";
msg.Title = "Message";
await msg.ShowAsync();
}
private void btnNextPage_Click(object sender, RoutedEventArgs e)
{
Frame.Navigate(typeof(SecondPage));
}
这很好。但是在按住第一个按钮并两次单击 btnMessageDisplay 按钮时会出现问题 应用程序崩溃了。
我知道为什么会因为异步任务而发生。但我不知道这个问题的解决方案。 请给我解决方案。
我得到以下异常。
AsyncTesting.exe 中出现“System.UnauthorizedAccessException”类型的异常,但未在用户代码中处理
访问被拒绝。 (来自 HRESULT 的异常:0x80070005 (E_ACCESSDENIED))
【问题讨论】:
-
请向我们提供有关崩溃的更多详细信息。你有什么例外吗?
-
所以你正在做一些你无权访问的事情,这几乎是这里任何人都可以说的。你在哪一行得到那个例外?什么是堆栈跟踪?
-
在这一行等待 msg.ShowAsync();
标签: c# xaml windows-phone-8.1