c#CS0649串行编译错误

时间:2017-08-19 15:53:13

标签: c#

我在视觉工作室里为自己学习c#,所以我有一个错误。

字段“MainWindow.port”永远不会赋值,因此它的默认值始终为null。

xlwb.Close(SaveChanges=0)

1 个答案:

答案 0 :(得分:0)

因此,实例化错误的变量会发生此错误。您没有实例化成员变量port,而是实例化了方法port中超出范围的局部变量Button_Click。更改您的代码如下:

public partial class MainWindow : Window
{
    SerialPort port;
    public MainWindow()
    {
        InitializeComponent();
        port = new SerialPort(); // removed SerialPort
        port.BaudRate = 9600;
        port.PortName = "COM4";
        port.Open();

    }

    private void Button_Click(object sender, RoutedEventArgs e)
    {
        port.WriteLine("1");
    }
}