У меня есть приложение C # Windows Form, которое содержит меню с этим событием:
private void createMenuItem_Click(object sender, EventArgs e)
{
canvas.Layer.RemoveAllChildren();
canvas.Controls.Clear();
createDock();
}
Я хотел бы предоставить пользователю возможность инициировать это событие через другой пункт меню, который включает таймер.
Мой таймер выглядит так:
private void transfer_timer()
{
System.Timers.Timer Clock = new System.Timers.Timer();
Clock.Elapsed += new ElapsedEventHandler(createMenuItem_Click);
Clock.Interval = timer_interval;
Clock.Start();
}
Когда я делаю это, получаю сообщение об ошибке:
createDock - недопустимая операция между потоками: доступ к элементу управления '' осуществляется из потока, отличного от потока, в котором он был создан.
Что я делаю не так?