看到一篇很好的博文: 如果只是测试用的,不需要上位机多稳定,直接用第一种方法,非常nice! 在zhihu上看到的一篇文章: C#: 线程间操作无效: 从不是创建控件“dataGridView”的线程访问它 - 知乎 https://zhuanlan.zhihu.com/p/57333565 在Form_Load中添加: //取消跨线程检查 Control.CheckForIllegalCrossThreadCalls = false;