模式对话框是邪恶的,但我一直在读"你应该删除模式对话框可能时 "
什么时候不能删除模态对话框?我的意思是,什么是真正的模态任务迫使我们使用邪恶的模态对话?
最常见的例子是"你想保存吗?" 我认为这是让用户点击保存而不是记住用户输入是神圣的概念问题.如果您刚刚自动保存并具有"撤消"功能或进行修订,那么您无需询问用户是否要保存.
为什么我们需要模态对话框?
编辑
除非他们在浏览器中编写自己的UI窗口系统,否则Web应用程序不会计入我的书中.Web应用程序没有与桌面应用程序相同的工具集.
编辑2
我的问题与标记为重复的问题略有不同.我觉得模态对话框不是最好的解决方案.提到的问题假定存在这种情况.
如果ShowAsync
在MessageDialog
对象上调用该命令时,另一个MessageDialog
对象已经显示给用户但未被解除(即当另一个对象已经启动时显示弹出窗口),UnauthorizedAccessException
则抛出一个.当您有多个线程试图同时提醒用户时,这可能会使事情变得困难.
我当前的(权宜之计)解决方案只是ShowAsync
用try/catch块包围调用并吞下异常.这不期望地导致用户错过后续通知.我能想到的另一种方法是手动实现某种弹出队列.这似乎是工作了过多的量,但考虑到其他框架(如Windows电话)没有这个问题,只会显示层出不穷的弹出一个为用户解除他们.
有没有其他方法可以解决这个问题?