2 回答

TA贡献1797条经验 获得超4个赞
您可以在任何方法中注册事件,例如 Load() 或在构造函数中。我使用了下面的构造函数。在设置所有需要的属性之前,您无法注册事件。我没有显示设置代码。
public partial class Form1 : Form
{
public static SerialPort serial = new SerialPort();
public Form1()
{
InitializeComponent();
serial.DataReceived += new SerialDataReceivedEventHandler(serial_DataReceived);
}
private void serial_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
}
}

TA贡献1873条经验 获得超9个赞
public Form1()
{
InitializeComponent();
//add DataReceived event of serial
Form1.serial.DataReceived += serial_DataReceived;
}
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
//remove DataReceived event of serial
Form1.serial.DataReceived -= serial_DataReceived;
}
void serial_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
//process data here
}
- 2 回答
- 0 关注
- 160 浏览
添加回答
举报