Использование потока довольно просто
Thread thread = new Thread(MethodWhichRequiresSTA);
thread.SetApartmentState(ApartmentState.STA);
Как сделать то же самое с помощью задач в приложении WPF? Вот код:
Task.Factory.StartNew
(
() =>
{return "some Text";}
)
.ContinueWith(r => AddControlsToGrid(r.Result));
Я получаю исключение InvalidOperationException с
. Вызывающий поток должен быть STA, потому что этого требуют многие компоненты пользовательского интерфейса.