1.在线程中处理控件时报错。
在线程中想要对TextBox写入时,报错。
解决:
this.Invoke(new MethodInvoker(delegate()
{
this.ShowRead.Text = DisplayData; //对控件的操作
}));
2.想要程序一直读取PLC寄存器的值并显示出来,于是使用了一个while循环,但这时结果显示有误。
解决:
将这个while循环写入线程中。
注意使用线程的话,需要引用库,添加一个using System.Threading;
new Thread(delegate()
{
while (lampState)
{
ReturnCode = act.ReadDeviceRandom2(lpszDeviceName, iNumberOfDeviceName, out lpshDeviceValue);
if (ReturnCode == 0)
{
this.Invoke(new MethodInvoker(delegate()