重複の可能性:
リストボックスのスクロールバーの位置を設定する
WPFリストボックスのスクロールバーの位置を最後に追加されたアイテムに設定するにはどうすればよいですか?
重複の可能性:
リストボックスのスクロールバーの位置を設定する
WPFリストボックスのスクロールバーの位置を最後に追加されたアイテムに設定するにはどうすればよいですか?
ScrollIntoViewメソッドを使用するだけで済みます。
object item = ...
listBox.Items.Add(item);
listBox.ScrollIntoView(item);
WPFでは、を使用する必要がありますScrollIntoView
。この例を追加しました:
int i = 0;
private void button1_Click(object sender, RoutedEventArgs e)
{
listBox1.Items.Add("Item nr. " + i.ToString());
listBox1.ScrollIntoView("Item nr. " + i.ToString());
i++;
}
Windowsフォームでは、次のようになります。
int visibleItems = myListBox.ClientSize.Height / myListBox.ItemHeight;
myListBox.TopIndex = Math.Max(myListBox.Items.Count - visibleItems + 1, 0);
この投稿で説明されているアイデアを使用して、MVVMに合わせた方法でそれを行うことができます-TreeViewItemの代わりにListViewItemにマップするだけです(IsSelectedがトリガーになる代わりに、追加される新しいアイテムに設定できます)。