Не удается преобразовать лямбда-выражение к типу "Delegate", так как он не является типом делегата
public void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)
{
string indata = this.serialPort1.ReadExisting();
this.Invoke((Delegate)(() => this.rtbserial.Text += indata));
}
Ответы (1 шт):
Автор решения: aepot
→ Ссылка
Превести к делегату это не значит приведение к типу Delegate, а к конкретному делегату. Чтобы создать конкретный тип делегата, можно его объявить, либо использовать совместимый с перегрузкой Control.Invoke, например Action.
Для старых фреймворков 4.x так
this.Invoke((Action)(() => this.rtbserial.Text += indata));
Для новых так
this.Invoke(() => this.rtbserial.Text += indata);