Вопрос

У меня есть приложение Silverlight 4, которое значительно пользуется от носильной поддержки колесных колес для мыши для ряда элементов управления. Страница, которая принимает приложение, содержит выпадающее меню, управляемое HTML, которое обычно накладывается в управление Silverlight.

В IE я должен включить режим Wallless, чтобы разрешить меню наложения правильно работать (Firefox 3.6 работает нормально без него). Тем не менее, включение режима без окон Предотвращает Firefox от поддержки событий колес мыши Без дополнительного кодирования вокруг HTML Dom Bridge.

Есть ли способ сказать, какие браузеры потребуют без окон и которые будут работать без него? В идеале, я хотел бы использовать информацию об httpBrowserviesivilities, чтобы решить, следует ли устанавливать свойство true, а не жесткодируя список "поддерживаемых" браузеров.

Это было полезно?

Решение

Silverlight 4 имеет поддержку событий колеса мыши, но есть ряд правил, которые необходимо знать:

  1. То есть никогда не проблема
  2. События MouseWheel никогда не работают на OS X из браузера, и только через HTML DOM в браузере.
  3. Windowsless во всех других браузерах нет, потому что они полагаются на NPAPI обрабатывать события.
  4. Вы можете заставить Mouseweel с функциями совместимости браузера, чтобы добраться до мыши с дома, как вы отмечали.
  5. HTML DOM никогда не будет работать, когда полный экран

Для полной поломки см. http://msdn.microsoft.com/en-us/library/dd759034(v=vs.95).aspx..

Другие советы

Может быть, вы можете использовать свой собственный класс Singleton MouseWehenManager, который внутренне рассмотрит события как DOM, так и на MouseWheelAPI и предоставляют их совместно, поэтому ваш код может использовать этот единственный интерфейс, который работает в любом случае?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top