WPF ListBox - прокрутка всегда сверху - PullRequest
1 голос
/ 18 октября 2010

У меня есть ListBox, который отображает некоторые слова. Слова вводятся в TextBox, и при отправке по нажатию кнопки они добавляются в ListBox. Проблема в том, что, если я добавлю много слов, прокрутка всегда будет в верхней части ListBox, поэтому я вижу не последние, а первые слова. Есть ли способ динамически перемещать прокрутку в конец ListBox при каждом добавлении слова, чтобы было видно последнее добавленное слово?

1 Ответ

1 голос
/ 18 октября 2010

вот, пожалуйста, это должно быть хорошо ...

public static void ScrollToBottom(this ListBox listbox)
{
    if (listbox == null) throw new ArgumentNullException("listbox", "Argument listbox cannot be null");
    if (!listbox.IsInitialized) throw new InvalidOperationException("ListBox is in an invalid state: IsInitialized == false");

    if (listbox.Items.Count == 0)
        return;

    listbox.ScrollIntoView(listbox.Items[listbox.Items.Count - 1]);
}

Теперь, с учетом любого ListBox, я могу сделать это: ListBox lb = ...;

lb.ScrollToBottom();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...