Нежелательный курсор ожидания в приложении WinForms - PullRequest
0 голосов
/ 14 июля 2009

У меня есть приложение MDI WinForms, в котором родительская форма MDI имеет ToolStrip, MenuStrip и StatusStrip. Всякий раз, когда мышь перемещается над одним из этих элементов управления, курсор меняется на курсор ожидания (стрелка с песочными часами). Похоже, это поведение по умолчанию в том, что нет кода, чтобы это произошло. Свойство UseWaitCursor как ToolStrip, так и MenuStrip имеет значение false; StatusStrip не имеет этого свойства.

Это происходит как при отладке, так и при выпуске, и сбивает с толку пользователей, которые думают, что приложение «делает» что-то, хотя в действительности это не так!

Кто-нибудь знает, что вызывает это, и, что более важно, как это остановить?

Ответы [ 4 ]

3 голосов
/ 05 августа 2009

Похоже, что это должно быть изменено в листе свойств, рекомендуем проверить файл designer.cs, если вы уже проверили свой собственный код.

Если это не удастся, покопайтесь. Попробуйте запустить следующую форму в форме и посмотреть, возвращает ли она какие-либо результаты:

var theCulprit = this.Controls.Cast<Control>().Where(ctrl => ctrl.UseWaitCursor);
0 голосов
/ 26 августа 2009

Глупый я. У меня была нежелательная строка кода в операторе finally, который устанавливал курсор на AppStarting.

0 голосов
/ 14 июля 2009

Я не вижу того же в моем приложении MDI. Попробуйте создать новый проект, добавив только эти элементы управления и запустив его. Если курсор не появляется, происходит что-то еще.

НТН

0 голосов
/ 14 июля 2009

Три элемента управления имеют свойство Cursor, которое изменяет внешний вид курсора, когда мышь находится над элементом управления. Убедитесь, что это свойство установлено по умолчанию и не изменено в вашем коде.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...