在 C# 中一些事件函数里面需要修改主窗口类里的一些变量,则需要用到托管
//托管处理 增加 ListView 的行
private void SetText(byte[] pData, int len)
{
int loop;
//托管处理
if (this.InvokeRequired)
{
_SetText call = delegate(byte[] npData, int nlen)
{
// Receiver_textBox.Text = "";
for (loop = 0; loop < nlen; loop++)
{
Receiver_textBox.Text += npData[loop].ToString("X2");
}
// nctl.Text += ntxt;
};
this.Invoke(call, pData, len);
}
else
{
// Receiver_textBox.Text = "";
for (loop = 0; loop < len; loop++)
{
Receiver_textBox.Text += pData[loop].ToString("X2");
}
}
}
//声明托管函数
private delegate void _SetText(byte[] pData, int len);
之后只要在事件函数中调用 SetText(buf, n);
就可以实现托管更改主窗口类的一些变量了。