立即更新标签控件

时间:2012-09-16 10:39:33

标签: c#

我的程序是通过串口接收数据,我想通过标签控制来显示它(数据)。接收数据是连续更新的。

如何立即刷新标签值?

1 个答案:

答案 0 :(得分:0)

以下是你必须做的事情:

首先:在新线程中调用你的函数:

Thread t = new Thread(new ThreadStart(yourfunction));
t.Start();

第二:您必须从表单中调用Label:

void yourfunction()
{
    while (..) // I think you have a loop in your function
    {
        if (this.label1.InvokeRequired)
        {
            this.Invoke(
            new changeLabelDelegateMethod(changeLabelText), label1, "your text");
        }
        else
            label1.Text = "your text";
    }
}
delegate void changeLabelDelegateMethod(Label l, string text);
void changeLabelText(Label l, string text)
{
        l.Text = text;
}