更新新项目时如何在WinForms ListView控件中自动向下滚动?

时间:2010-01-06 16:09:20

标签: c# winforms listview

更新新项目时如何在ListView控件中自动向下滚动?

我试过了

listView1.Focus();
listView1.Items[listView1.Items.Count - 1].Selected = true;

但这不起作用。

6 个答案:

答案 0 :(得分:71)

尝试

listView1.Items[listView1.Items.Count - 1].EnsureVisible();

答案 1 :(得分:0)

其中x是要查看的列表中项目的int

listView1.Items[x].Focus();
listView1.Items[x].Selected = true;
listView1.EnsureVisible(x);

答案 2 :(得分:0)

老式的解决方案:

 ListView1.SetFocus;
 PostMessage(ListView1.Handle, WM_KEYDOWN, VK_DOWN, 0);

答案 3 :(得分:0)

另一种可能的解决方案:

listview1.TopItem = listView1.Items[listView1.Items.Count - 1];

答案 4 :(得分:-2)

也许

listView1.Items[listView1.Items.Count - 1].Selected = false;
listView1.Items[listView1.Items.Count - 1].Selected = true;

答案 5 :(得分:-2)

Codesleuth在列表中的最后一项上调用EnsureVisible()的答案仅在表单OnShown()事件期间调用时才适用于我。

我尝试在构造函数中执行此操作,我在其中填充了ListView,但没有任何反应。然而,在OnShown()期间执行此操作是一种享受。

希望这有帮助。