Используйте Dispatcher, чтобы переключиться с фона на ваш поток пользовательского интерфейса.
//This has to be done on the UI-Thread, before calling the async method
var dispatcher = Dispatcher.CurrentDispatcher;
//Now, in your async callback, do something like this
private void AsyncCallback(IAsyncResult result){
dispatcher.Invoke(new Action(() =>
{
//Create your form Here
}
}
Если вы хотите, чтобы ваш фоновый поток ожидал, пока форма не будет создана и показана, используйте Invoke (), иначе используйтеНачинают