В моем элементе управления WPF я реализовал асинхронный шаблон для выполнения задач без интерфейса пользователя следующим образом.Хостинг WPF-контроль в приложении Windows Forms
internal static void Execute(Action action)
{
if (System.Windows.Application.Current != null)
{
if (System.Windows.Application.Current.Dispatcher.CheckAccess())
action();
else
System.Windows.Application.Current.Dispatcher.BeginInvoke(action, null).Wait();
}
}
Это прекрасно подходит для приложений WPF. Когда я использовал свой элемент управления WPF в приложении Windows Forms с помощью ElementHost, я не могу использовать вышеуказанный метод, так как System.Application.Current будет null.
Теперь я должен знать следующее.
1) Возможно ли получить доступ к потоку пользовательского интерфейса в моем элементе управления WPF, когда элемент управления размещен в приложении Windows Forms?
2) Если возможно, любезно посоветуйте мне, как его достичь.
[BackgroundWorker Class] (https://msdn.microsoft.com/en-us/library/system.componentmodel.backgroundworker (v = vs.110) .aspx) именно для этой цели – Fabio