我正在尝试关闭我的 WinRT 应用程序中的 MessageDialog。我注意到如果我尝试同时显示两个消息对话框,我会收到 UnauthorizedAccessException。为避免这种情况,我想关闭打开的现有消息对话框。我用它来显示对话框:
MessageDialog md = new MessageDialog(" ");
private void MessageBox(string s)
{
Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
{
md.Content = s;
//CLOSE HERE
md.ShowAsync();
}
);
}
如何关闭它?
最佳答案
与其尝试找到关闭它的方法,不如试试这个 为 AsyncCommand 声明一个实例变量;
AsyncCommand command;
command = md.ShowAsync();
然后在您的命令处理程序中,在运行您的方法之前检查命令是否为空
if(command!=null)
{
command.Cancel();
}
// 做事/再试一次 block
关于c# - 如何以编程方式关闭消息对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12698666/