Горизонтальная прокрутка WPF ScrollViewer с помощью кнопокC#

Место общения программистов C#
Anonymous
Горизонтальная прокрутка WPF ScrollViewer с помощью кнопок

Сообщение Anonymous »

У меня есть ListBox с горизонтальной ориентацией внутри ScrollViewer. Когда список растет, он автоматически прокручивается до последнего элемента. Однако для этого полосы прокрутки должны быть отключены. Мне нужно иметь отдельные кнопки, которые будут прокручивать ScrollViewer с помощью заранее определенной итерации (так же, как кнопки на полосах прокрутки). Для этого я попробовал:

Код: Выделить всё

sv.ScrollToHorizontalOffset(sv.HorizontalOffset + 20);
Однако HorizontalOffset ScrollViewer всегда равен 0, и метод ничего не делает ни с какими значениями.

Код: Выделить всё

sv.LineRight();
sv.LineLeft();
Оба не работают, возможно, потому, что единственным дочерним элементом является ListBox.
Если я изменю ориентацию ListBox на вертикальную, то при прокрутке/добавлении новых элементов ScrollViewer's UpperticalOffset изменяется, и ScrollToVerticalOffset работает правильно. Почему это отличается от горизонтальной ориентации? Есть ли другие решения?
Примечание: это было сделано без использования XAML для размещения элементов управления.

Подробнее здесь: https://stackoverflow.com/questions/639 ... th-buttons

Вернуться в «C#»