Я разрабатываю приложение, в котором данные получены из SerialPort. Эти данные обновляются в TextView. Я использую следующий код из другого класса.
_displayWindow.Invoke(new EventHandler(delegate { _displayWindow.SelectedText = string.Empty; _displayWindow.AppendText(msg); _displayWindow.ScrollToCaret(); }));
Но теперь я не буду помещать его в TextView, эти данные будут помещены в ToolStripLabel, но ToolStripLabel у него нет Invoke.
Есть ли способ обновить ToolStripLabel?
UPDATE: это полный метод
private void DisplayData(string msg)
{
_displayWindow.Invoke(new EventHandler(delegate
{
_displayWindow.SelectedText = string.Empty;
_displayWindow.AppendText(msg);
_displayWindow.ScrollToCaret();
}));
}
Я работаю в Framework 4.5
Как насчет:
this.BeginInvoke((MethodInvoker)delegate
{
// update toolstriplabel here
});
Я не знаю вашу версию фреймворка. Я нашел эту ссылку, которая может вас заинтересовать: Как обновить графический интерфейс из другого потока на С#?