当应用程序引发一些异常时,通常会做的是,记录异常,向用户显示异常,并根据其严重性,我们继续使用app或关闭它。
如果有一些例外,例如
“暂停调度程序处理时无法执行此操作。”
异常,UI无法向用户显示消息,我们需要使用Dispatcher.BeginInvoke异步向用户显示消息。 BeginInvoke的问题是它立即返回,代码继续执行从它显示消息框的位置。在我们需要用户输入的情况下(如是/否对话框)。
那么,在继续代码执行之前,我们如何才能安全地显示消息框对话框,并仍然等待用户结果操作?
答案 0 :(得分:0)
如果您使用Invoke()
而不是BeginInoke()
,则在完成任务之前,您的线程不会立即返回,这样您就可以询问有关如何继续的用户输入。
this问题
中的更多信息