Событие колеса мыши не работает для выпадающего списка на вкладке?

У меня есть вкладки ленты, и на каждой вкладке есть кнопки, текстовые поля, поля со списком. Моя проблема в том, что я хочу иметь возможность прокручивать колесо мыши вверх и вниз (для поля со списком), но вместо этого колесо мыши меняет вкладки. Это не влияет на комбинированный список в нем. Есть ли способ это исправить? Это действительно раздражает.

1 ответ

Решение

Слишком долго для комментария, поэтому я опубликую его здесь.

Попробуйте создать свой собственный класс, который наследуется от этого элемента управления ленты. У меня нет библиотеки ComponentOne, поэтому для этого примера я просто вызываю элемент управления "Лента":

public class MyRibbon : Ribbon {

  public bool DisableMouseWheel { get; set; }

  protected override void OnMouseWheel(MouseEventArgs e) {
    if (!this.DisableMouseWheel) {
      base.OnMouseWheel(e);
    }
  }
}

Восстановите ваше решение. Нажмите кнопку "Показать все файлы" в обозревателе решений и откройте файл конструктора для своей формы. В файле должно быть две строки, которые ссылаются на ваш тип ленты, замените тип новым классом MyRibbon.

Теперь подпишитесь на события ComboBox Enter и Leave, где вы меняете DisableMouseWheel имущество.

Сделайте резервную копию своей работы, прежде чем пытаться это.

Другие вопросы по тегам