【发布时间】:2011-05-12 01:59:55
【问题描述】:
我有一段代码在 GUI 线程上执行了一段时间(为了简化,我们假设在 Button_Click 事件中)。
当方法启动时,我想显示一条消息“请稍候”,然后继续工作。工作完成后,我将隐藏消息并继续。
我知道我可以使用 BackgroundWorker(或任何其他与 Thread 相关的)来做到这一点,但我希望已经完成了一些事情,例如:
MBox.Show("Please wait...");
//do my work...
MBox.Hide();
【问题讨论】:
-
你不想在主 UI 线程上工作......它会锁定你的界面并使你的应用看起来像是崩溃了。如果它不是微不足道的,请始终在后台线程上执行此操作。更重要的是,使用 MessageBox 时,用户无法知道您的任务将运行多长时间,如果可能的话,您真的想要一个进度条。
标签: c# winforms messagebox