Проблема: переменная "str", объявленная в Form1, не читается в методе Timer1_Tick()
.Вход поступает от Arduino, который подключен к нескольким датчикам.Входы датчиков объединяются в одну строку (пример [1,2,4,5,6]).Для этого кода мне просто нужно отобразить эту строку.Любая помощь по этому вопросу высоко ценится.
namespace WindowsFormsApp1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
SerialPort currentPort = new SerialPort("COM5", 9600, Parity.None, 8, StopBits.One);
currentPort.Open();
string str = currentPort.ReadLine();
}
private void Timer1_Tick(object sender, EventArgs e)
{
Task.Run(() => {
this.BeginInvoke((Action)(() => { label1.Text = str; }));
});
}
private void Button1_Click(object sender, EventArgs e)
{//Start
timer1.Start();
}
private void Button2_Click(object sender, EventArgs e)
{//Stop
timer1.Stop();
}
}
}