Итак, у меня есть приложение формы C# windows с GUI, которое позволяет мне подключаться к Arduino через последовательное соединение Bluetooth, и я хочу повернуть КРАСНЫЙ фон GUI, когда соединение разорвано.
Я создал ErrorHandler в моей функции connectToArduino, но, похоже, он работает неправильно. Когда я включаю Arduino, GUI не становится красным!
private void connectToArduino()
{
string selectedPort = comboBox1.GetItemText(comboBox1.SelectedItem);
portArduino = new SerialPort(selectedPort, 9600, Parity.None, 8, StopBits.One);
portArduino.RtsEnable = true;
portArduino.DtrEnable = true;
try
{
portArduino.Open();
isConnectedArduino = true;
}
catch (Exception e)
{
label8.Text = "Connection to Micro Failed. Try Again";
}
portArduino.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);
portArduino.ErrorReceived += new SerialErrorReceivedEventHandler(ErrorReceivedHandler);
button1.Text = "Disconnect";
enableControlsArduino();
}
Обработчик ошибок:
private void ErrorReceivedHandler(object sender, SerialErrorReceivedEventArgs e)
{
Invoke(new Action(() =>
{
this.BackColor = Color.Red;
}));
}