Отображение курсора ожидания?

Я хочу отображать курсор ожидания во время трудоемкого процесса в приложении Prism, которое я пишу. Я подключил его, используя составное событие WaitCursorRequestEvent<bool>. «Истина» означает отображение курсора ожидания, «ложь» означает возврат к значениям по умолчанию.

Оболочка подписывается на событие и обрабатывает его с помощью следующего обработчика событий:

/// <summary>
/// Handles the WaitCursorRequest event.
/// </summary>
public void OnWaitCursorRequest(bool showWaitCursor)
{
    // Set cursor
    this.Cursor = showWaitCursor ? Cursors.Wait : Cursors.Arrow;
    this.ForceCursor = true;
}

Модуль, выполняющий трудоемкий процесс, публикует событие с полезной нагрузкой «true», когда он запускает процесс, и снова публикует событие с полезной нагрузкой «false», когда он завершает процесс.

Обработчик событий вызывается в обоих случаях - я тестировал, задав точку останова. Но курсор не меняется. Есть идеи, что я делаю не так? Спасибо.


person David Veeneman    schedule 16.01.2010    source источник


Ответы (1)


возможно, необходимо также установить курсор для всего приложения

Mouse.OverrideCursor = Cursors.Wait
person jspcal    schedule 16.01.2010
comment
Установите Mouse.OverrideCursor, как показано выше, для отображения курсора ожидания; установите для него значение null, чтобы очистить курсор ожидания и вернуться к курсору по умолчанию. - person David Veeneman; 16.01.2010