Прокрутка прокрутки WPF прокручивается до нижнего значения по умолчанию

У меня есть ScrollViewer, содержащий a ListBox. Я бы хотел, чтобы ScrollViewer прокручивался до конца по умолчанию при загрузке представления! Это потому, что самый последний элемент всегда является последним элементом в ListBox.

Есть ли простой способ достичь такого поведения?

Спасибо

Ответ 1

Если у вас есть доступ к ScrollViewer, вы также можете использовать метод ScrollViewer.ScrollToBottom().

Ответ 2

Да, есть простой способ.

lv.ScrollIntoView(lv.Items[0]);

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

Ответ 3

Кроме того, если метод ScrollToBottom не доходит до конца (останавливается на 1 пункт), вызовите метод ScrollViewer.UpdateLayout() непосредственно перед вашим вызовом ScrollViewer.ScrollToBottom.

Ответ 4

это очень просто и работает:

myListBox.ScrollIntoView(lastObjectAdded);

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