Приложение WPF не может обновить прямоугольник вокруг указателя мыши при щелчке

Это только я?

Я новичок в WPF. Все красиво и сияет, и мне удалось написать небольшое приложение, которое отвечает моим потребностям, но я заметил, что много раз, например, когда я нажимаю кнопку или представление списка, событие обрабатывается (например, выбор представления списка изменяется) , но область под мышью не обновляется, поэтому не обновляется небольшой прямоугольник в том месте, где был указатель мыши – например цвет фона всей строки выбранного элемента GridView становится темно-синим, но там, где была мышь, есть белая прямоугольная область.

Я не смог найти никаких упоминаний об этом поведении в Интернете, и мне было интересно, это только я — что-то в моей среде или в моем коде? И что еще более важно, есть ли способ исправить это?

PS Обычно я запускаю приложение из Debug из VS 2008, но такое бывает и при запуске релизной сборки вне IDE.

Спасибо,
сплинтор


person splintor    schedule 25.11.2009    source источник


Ответы (1)


Скорее всего, это проблема видеодрайвера - это определенно не ожидаемое поведение, и вы не можете случайно сделать это в своем коде. Так что это может зависеть от вашей видеокарты, установленных драйверов и операционной системы. Один из возможных способов диагностировать это — попробовать настроить параметры рендеринга, особенно параметр аппаратного ускорения. См. http://msdn.microsoft.com/en-us/library/aa970912.aspx, особенно ключ DisableHWAcceleration и (только в целях тестирования!) UseReferenceRasterizer.

person itowlson    schedule 25.11.2009
comment
Действительно, установка DisableHWAcceleration на 1 устранила проблему, поэтому, вероятно, проблема связана с видеодрайвером Windows XP моего ноутбука. Бесконечно благодарен. Я пока оставлю DisableHWAcceleration равным 1, но не знаете ли вы, как я могу устранить неполадки? - person splintor; 25.11.2009
comment
Ах, извини, сплинтор, не могу помочь тебе с устранением неполадок. Я думаю, обратитесь к производителю ноутбука или видеокарты за обновленными драйверами, любыми исправлениями DirectX и т. д., и если это по-прежнему не помогает, сообщите о проблеме на форумах поддержки производителя. - person itowlson; 25.11.2009