【发布时间】:2016-04-19 16:27:24
【问题描述】:
我正在将来自惯性传感器的数据流式传输到 C# 应用程序中。使用 bool 作为开关,我将传入的值打印到一系列文本框中,如下所示:
if (bStreaming == true)
{
textboxTX.Invoke(new Action(() => textboxTX.Text = Convert.ToString(result[0])));
textboxTY.Invoke(new Action(() => textboxTY.Text = Convert.ToString(result[1])));
textboxTZ.Invoke(new Action(() => textboxTZ.Text = Convert.ToString(result[2])));
}
问题是,一旦我开始这个循环,我的应用程序的其余部分就会大大减慢并开始滞后。我做错了吗?我尝试在新线程中启动循环,并看到相同的结果。
【问题讨论】:
-
您多久更新一次 UI?
-
这段代码本身不太可能导致问题。在 UI 上更新 3 个文本框是一个非常简单的操作,应该几乎立即执行,但如果你在循环中执行,没有延迟......