在网格上,我有一个ListBox和一个按钮。如果点击该按钮,则将项目添加到列表框中。自动向下滚动列表框
我试图解决的问题是,该项目添加后,它不集中。
我想自动向下滚动列表框,以便用户可以看到最近添加的项目。任何想法?
在网格上,我有一个ListBox和一个按钮。如果点击该按钮,则将项目添加到列表框中。自动向下滚动列表框
我试图解决的问题是,该项目添加后,它不集中。
我想自动向下滚动列表框,以便用户可以看到最近添加的项目。任何想法?
您可以设置SelectedIndex属性来设置当前选定的项目。
如果它滚动页面,则可以使用ScrollIntoView()来显示列表底部。
listBox1.SelectedIndex = listBox1.Items.Count;
listBox1.ScrollIntoView(listBox1.SelectedItem);
我不得不调用ScrollIntoView
强制到UI线程,这似乎这样的伎俩。
下面是这个工作的一个例子。 A dd将其作为新DataBound应用程序中的应用程序栏图标按钮单击事件的事件处理程序。
private void ApplicationBarIconButton_Click(object sender, EventArgs e)
{
App.ViewModel.Items.Add(new ItemViewModel
{
LineOne = "new L1",
LineTwo = "new L2",
LineThree = "new L3"
});
Dispatcher.BeginInvoke(() =>
MainListBox.ScrollIntoView(MainListBox.Items.Last()));
}