Как разместить содержимое CListBox на границе без элементов?

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

Чтобы сделать это правильно, мне нужно вертикально прокрутить элементы так, чтобы они не обязательно выравнивались по границе элемента. Как в следующем примере:

Показаны 2 вещи, которые можно сделать, и 1, что мне нужно сделать

Левая сторона показывает верхнюю часть первого ряда, средняя показывает верхнюю часть второго ряда. На правом изображении показан фрагмент строки 1, что мне и нужно.

Возможно ли это, или мне придется провести серьезный рефакторинг, требующий замены элементов управления чем-то другим? (определенно не предпочтительно из-за потенциального риска)

О, и прежде чем кто-нибудь спросит, почему это было сделано, ответ наследие.

Я все еще смотрю на это, но если контроль не может быть принужден к этому, может быть, есть обходной путь, где я мог бы иметь какой-то виртуальный CListBox который я мог бы возможно BitBlt от, или это повлечет за собой больше работы, чем замена элементов управления? Есть ли способ лучше?

Возможно, я мог бы инкапсулировать элемент управления в другое окно, которое могло бы иметь увеличенный вид и обрезать его до того, что я хочу видеть?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …