Я не знаю, есть ли способ сделать то, что вы хотите. Лучшее, что я могу сделать, это попытаться найти правильную позицию в тексте, затем выбрать Select () и ScrollToCaret (). Я обычно использую этот трюк только для того, чтобы заставить TextBox / RichTextBox прокручиваться до самого конца. Нелегко было бы использовать его для того, что вы хотите.
Есть ли причина, по которой вы не хотите использовать полосы прокрутки по умолчанию?
По моему опыту, мне редко везло, когда я пытался использовать пользовательские полосы прокрутки в C # - особенно с элементом управления, который имеет встроенную возможность автоматической прокрутки.
Единственный раз, когда я использовал их без особых проблем, - это сторонний элемент управления, у которого не было возможности автоматической прокрутки.