可能重复:
设置列表框的滚动条位置
如何将 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 对齐的方式执行此操作- 只需映射到 ListViewItem 而不是 TreeViewItem(而不是 IsSelected 作为触发器,您可以将其设置为要添加的新项目)。