[英]C# 'SerialPort' does not contain a constructor that takes 6 arguments
我正在开发一个C#Windows应用程序。 我正在使用串行USB端口来侦听来自所选COM端口的数据
SerialPort sp;
string t;
void Serial(string port_name)
{
sp = new SerialPort(port_name, 9600, Parity.None, 8, StopBits.One,Handshake.None);
sp.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);
sp.Open();
}
private void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)
{
SerialPort sp = (SerialPort)sender;
string list = sp.ReadLine();
listBox1.Items.Add(list);
}
private void Form1_Load(object sender, EventArgs e)
{
t = "COM5";
Serial(t);
}
但是我收到了一个错误
'SerialPort'不包含带有6个参数的构造函数
这里有什么问题? 如果有人知道请帮助我。
那么只有那些构造函数
SerialPort()
SerialPort(IContainer)
SerialPort(String)
SerialPort(String, Int32)
SerialPort(String, Int32, Parity)
SerialPort(String, Int32, Parity, Int32)
SerialPort(String, Int32, Parity, Int32, StopBits)
所以你可能想要改变你的初始化语句
sp = new SerialPort(port_name, 9600, Parity.None, 8, StopBits.One,Handshake.None);
至
sp = new SerialPort(port_name, 9600, Parity.None, 8, StopBits.One);
sp.Handshake = Handshake.None;
在构造函数中没有握手,你必须这样做:
sp = new SerialPort(port_name, 9600, Parity.None, 8, StopBits.One);
sp.Handshake = Handshake.None;
从MSDN SerialPort类没有6个参数的构造。
SerialPort(String, Int32, Parity, Int32, StopBits)
- 使用指定的端口名称,波特率,奇偶校验位,数据位和停止位初始化SerialPort类的新实例。
握手 - 您无法在构造函数中设置它。 您可以这样设置它:
sp.Handshake = Handshake.None;
握手不是SerialPort构造函数的参数之一。 SerialPort类中有一个属性“Handshake”,可以设置。 默认值为none。 https://msdn.microsoft.com/en-us/library/system.io.ports.serialport.handshake(v=vs.110).aspx
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.