让我先来介绍一下背景。
我们有一个中等规模的应用程序,它在各个地方(数百处)使用 MessageBox.Show(...)。
这些消息框是工作流程的一部分,用于通知、警告或从用户那里获取输入。如果没有活动,应用程序应自动注销。我们有一个要求,在注销应用程序时,只需清除会话数据、清除视图并隐藏它本身,以便在下次启动时,不必执行启动过程,该过程在时间成本方面很高。
一切运行良好,但是当屏幕上有某个消息框而用户没有响应该消息框,并且由于没有活动而导致应用程序注销时,问题就出现了。问题是消息框不会消失。
如何在隐藏应用程序的同时关闭打开的消息框(如果有的话)?
MessageBox.Show(...)
是模态的,那么程序怎么能发送一个键呢?你是使用线程/任务吗? - Fischermaen