小白一个,模仿别人的代码写了2个C#串口通讯程序,有一个串口不能接收数据!!! 求助?

2个C#串口通讯程序都是用线程接收数据,不同之处:

第一个:初始化代码写public Form1()里面,如图一。
第二个:初始化代码写Form1_Load里面,如图二。

第一个程序能正常接收和发送数据。
第二个程序能正常接收和发送数据,但是,数据没有在接收窗口显示出来。为什么我能确定已经接收数据了,因为我在接收数据的代码那里设置了断点,再debug,(用虚拟串口和CCCOM32串口一起debug)程序能正常跑下去.

现在找不出为什么数据没有在接收窗口显示出来(我用textBox1接收数据),帮忙啊!!!

图片说明

图片说明

用串口调试助手看下又没有返回数据。在serialreport的datareceived事件里看看有没有触发

直接拖串口的serialport控件进去,按照串口调试助手的连接参数配置一下,就OK了。