2009-11-18 56 views
0

我有一个Winforms应用程序(.NET 3.X),它运行类中的某个方法来处理某些数据。该方法会周期性地引发一个StatusUpdate事件,并计算处理的项目数量。我有一个表格上的ToolStripStatuslabel,我想用count来更新。问题是状态标签从不更新,直到过程完成。以下是来自状态更新事件处理程序的代码:如何在另一个事件中强制解决事件

toolStripStatusLabel.Text = e.Count.ToString(); statusStrip.Refresh();

我认为问题在于Refresh事件不会触发,因为处理方法是在Button按钮事件中调用的。我认为有一种方法可以强制刷新进程,但我不记得它是什么。

我唯一的其他解决方案是在它自己的线程中执行处理。

回答

1

发现在另一个线程答案:

调用Application.DoEvents()设置标签后,但你应该做的所有工作在一个单独的线程来代替,因此用户可以关闭该窗口。

这是我想的......

0

您是否尝试过在标签本身上调用刷新? toolStripStatusLabel.Refresh();

+0

没有工作命令 – 2009-11-18 18:35:11

相关问题