У меня есть WPF UserControl
, который тестируется в приложениях WPF
и WinForms
. Элемент управления состоит из других элементов управления, в основном элемента управления карты. Работа выполняется внутри UserControl
с использованием Tasks
, а работа с элементом управления картой - с помощью Application.Current.Dispatcher.Invoke
.
Все отлично работает при размещении этого элемента управления в приложении WPF, но в приложении WinForms
исключение NullReference выдается при каждом использовании Dispatcher.Invoke
. Фактически, Application.Current
всегда равно нулю в приложении WinForms.
Я видел это: https://stackoverflow.com/a/14753962/2480598, что предполагает:
if ( null == System.Windows.Application.Current )
{
new System.Windows.Application();
}
Но что, если у меня нет контроля над приложением WinForms
? Нет ли другого способа справиться с этим?