gpt4 book ai didi

c# - C# 中的多线程错误

转载 作者:太空狗 更新时间:2023-10-29 21:11:13 25 4
gpt4 key购买 nike

我正在尝试更新文本框。我以为我的线程代码可以解决问题,但事实并非如此。有人可以帮忙吗?

new Thread((ThreadStart)delegate { txtCapacitance.Text = Math.Round(capacitance, 3).ToString(); }).Start();

出现以下错误:

Cross-thread operation not valid: Control 'txtCapacitance' accessed from a thread other than the thread it was created on.

请注意,所有这些都是由 dataReceived 函数启动的,只要接收到 USB 数据,该函数就会被调用。

最佳答案

UI 对象只能从 UI 线程调用。这可以通过控件的 Invoke 方法来完成:

txtCapacitance.Invoke((Action)(() => { txtCapacitance.Text = Math.Round(capacitance, 3).ToString(); }));

关于c# - C# 中的多线程错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2597568/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com