У меня есть метод ниже в моем приложении WPF.Я обернул его в вызов Dispatcher.Invoke, потому что служба, открывающая окно, работает в потоке, отличном от основного потока.Пока это работает.
Но проблема с моим курсором.Кажется, что вызов OpenMimic выполняется асинхронно, поэтому мой курсор превращается в песочные часы, но только на долю секунды.Затем через 2 или 3 секунды метод OpenMimic открывает окно.Как я могу показать это так, чтобы Курсор оставался в качестве песочных часов, пока не завершится вызов OpenMimic?
[OnExecuteMethod]
public void OpenAlarmListMimic()
{
Application.Current.Dispatcher.Invoke(() =>
{
try
{
Mouse.OverrideCursor = Cursors.Wait;
ViewsIntegerationService.OpenMimic(@"GTCS\GCS\mmc_AlarmList", "", "", 2, ThisMimic.Context, null);
}
finally
{
Mouse.OverrideCursor = null;
}
});
}