可能存的的基本问题https://blog.csdn.net/weixin_30413739/article/details/95082187
下面我还要补充一点是我才碰见的
我的任务是用.net程序连接二维码扫描仪,识别扫描仪并返回相应的结果,再给dataGridView1赋值的时候就开始报错,调试的时候也没有发现问题,代码写的也没问题,也没有空值,不知道为什么会报“未将对象引用设置到对象的实例”,百思不得其解,后来通过大神指点才发现,是多线程的问题,加上invoke就好了!大神最后告诉我:“程序连接多个硬件时很有可能遇到多线程问题,遇到多线程问题你就 无脑invoke 就好了”
报错代码
DataTable ycDt = webService.getdata(sys_encrypt, sys_encrypt2, ERPID, getYcSQL);
dataGridView1.DataSource = ycDt;
改进代码
dataGridView1.Invoke(new MethodInvoker(delegate ()
{
}
DataTable ycDt = webService.getdata(sys_encrypt, sys_encrypt2, ERPID, getYcSQL);
dataGridView1.DataSource = ycDt;
)}}