向对话提供数据

时间:2013-11-28 16:16:26

标签: c# winforms asynchronous dialog

我有static class ControlCenter,它以时间间隔与外部系统通信。 对于每个问题和对外部系统的回答,我的ControlCenter会引发event,它会提供状态信息UI图层。即使通信失败,也会引发带有错误消息的event
现在问题:
如果存在一些通信错误,我希望在对话框模式中显示表单或对话框,这样用户只能与此显示的UI项目进行交互。
即使出现错误,ControlCenter和UI层之间的通信仍在继续,我希望提供显示对话框的实际数据,例如“尝试重新连接....第3次尝试从20开始你想要杀人服务吗? “ 我希望能够通过用户点击或从其父表单(顶部ui层)以编程方式隐藏此对话框表单。

我正在尝试使用其父表单中的数据创建我自己的表单消费事件并显示MyForm.ShowDialog();但是在showdialog()之后,UIlayer会使用对话框等待用户操作。

你知道这个背景下的一些演练吗?
非常感谢你。

1 个答案:

答案 0 :(得分:1)

This问题与您的问题非常相似,并且有一个很好的answer问题。归结为使用BackgroundWorker类来检索所需信息。