Я понимаю, что это может быть повторяющаяся запись, но я хочу убедиться, что я четко задаю этот вопрос и получу ответ на основании моей формулировки.
У меня есть коллекция форм, которые наследуются от общего визуального элемента: MainVisualForm. Этот элемент дает мне возможность узнать, когда форма продвигается назад. Какая форма будет следующей в последовательности, зависит от действий пользователя.
В настоящее время у меня есть этот код для одного такого события, которое я тестирую:
form.OnNextForm += (f, ev) =>
{
Parameters.Vehicle = ((VehicleForm)f).SelectedVehicle;
//FormStack.Push(Parameters.Vehicle == Vehicle.SUV
// ? new KeyValuePair<Type, IFormActionBehvaior>(typeof(EntertainmentForm), null)
// : new KeyValuePair<Type, IFormActionBehvaior>(typeof(ColorForm), null));
};
За этим назначением сразу следует ShowDialog (), который блокирует пользователя, пока форма диалога не будет закрыта.
Вопрос в следующем:
После закрытия формы .NET ждет завершения EventHandler перед запуском кода, который следует непосредственно за ShowDialog (), или обработчик обрабатывается другим потоком?
Большое спасибо заранее