Вопрос по управлению WinForms TrackBar в.Net

Кто-нибудь знает интервал в миллисекундах, используемый трекбаром фреймворка, между вызовом события ValueChanged при перемещении ручки мышью?

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

Я посмотрел на рефлектор, но это один из тех элементов управления, где большая часть реализации не отображается.

ETA: На самом деле, если подумать, все не так просто. Для небольших изменений TrackBar вызывает событие для каждого изменения. Однако, если вы сделаете большое быстрое изменение с помощью ручки, оно не будет вызывать событие для каждого шага. Просто интересно, как именно фреймворк это делает?

Спасибо

1 ответ

Решение

Элемент управления TrackBar - это оболочка для собственного элемента управления Windows Trackbar. Вы не найдете соответствующий код.

Это почти наверняка контролируется сообщениями WM_MOUSEMOVE, если вы быстро перемещаете мышь, она пропускает отчет о некоторых промежуточных позициях. Поэтому ваш пользовательский элемент управления должен действовать точно так же, как TrackBar.

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