Shaikh Javed Aryan Ответов: 1

Как синхронизировать label/textbox/richtextbox с полосой прокрутки listbox


Есть ли способ, которым мы можем синхронизировать метку прокрутки, текстовое поле или RichTextBox с полосой прокрутки ListBox?

Полоса прокрутки должна быть видна только для ListBox и (Label, TextBox или RichTextBox не должны иметь никакой scollbar)

Я уже упоминал Label, TextBox или RichTextBox, любой может работать на меня, в зависимости от того, что совместимо для синхронизации прокрутки со списком.

Что я уже пробовал:

Я попробовал 2 RichTextBox sync, но это не то, что я ищу, хотя я также попробовал 2 ListBox Scroll и скрыл 1 ScrollBar Scroller, но это медленно и не прокручивается вместе, есть задержка в несколько миллисекунд.

1 Ответов

Рейтинг:
0

Mrunal Sonawane

Я получил эту работу для ListBox и RichTextBox, но только в одном случае... Это означает, что прокрутка RTB будет прокручивать LB, но не наоборот
Вот этот код... Поместите его в функцию VScroll RTB

Dim lineNumber As Integer = 0
номер_строки является глобальной переменной...
Dim firstVisibleChar As Integer = RichTextBox1.GetCharIndexFromPosition(New Point(0, 0))
lineNumber = RichTextBox1.GetLineFromCharIndex(firstVisibleChar)
ListBox1.TopIndex = lineNumber

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


Shaikh Javed Aryan

Это здорово, но я хотел Listbox в RichTextBox

Mrunal Sonawane

Но вы можете попробовать одну вещь... скройте полосу прокрутки ListBox и поместите RTB с правой стороны, чтобы у вас была видна только одна полоса прокрутки.