Как запустить метод с UI потока? У меня есть статичный класс Log для вывода сообщений в лог со всех частей программы. Выглядит так:
static class Log
{
static private ListBox _loglistbox;
public static void initialize(ListBox loglistbox)
{
_loglistbox = loglistbox;
}
public static void addComment(string comment)
{
_loglistbox.Items.Add(comment);
_loglistbox.SelectedIndex = _loglistbox.Items.Count - 1;
_loglistbox.SelectedIndex = -1;
}
}
При старте я передаю туда в какой listbox писать и он исправно выполняет обязанности. Начал переводить свой основной метод в поток, чтобы не тормозил интерфейс при выполнении. С потока когда обращаюсь к классу Log получаю ошибку обращения с другого потока, подскажите пожалуйста, как правильно обратиться с другого потока к классу Log, чтобы он смогу вывести сообщение в listbox?
private void button2_Click(object sender, EventArgs e)
{
Thread writeDataThread = new Thread(writeDataToBase);
writeDataThread.Start();
}
private void writeDataToBase()
{
Log.addComment("Start"); // ошибка
}