Надеюсь, я понимаю ваш вопрос.Если нет, не стесняйтесь поправлять меня.
Чтобы открыть новое окно из метода BackgroundWorker_DoWork, вы можете использовать Диспетчер, как указано в комментариях:
Application.Current.Dispatcher.Invoke((Action)delegate
{
EmailEnter emailer = new EmailEnter("Transfer", employee);
emailer.ShowDialog();
});
Это пример из моего рабочего кода.Переменная employee является локальной для фонового рабочего метода и отправляется конструктору EmailEnter в качестве параметра.Затем окно открывается с помощью .ShowDialog ().
Я назвал это в конце моего метода BackgroundWorker_DoWork.
В вашем случае вы захотите заменить EmailEnter на ColumnStartSelection и передать свой filePathпеременная к нему.
Пожалуйста, дайте мне знать, если вы хотите, чтобы я что-то прояснил.