Следующий хак одновременно выберет и покажет последний элемент ListView.
Не уверен, почему это работает, но это работает.
listview.SelectedIndices.Clear();
listview.FocusedItem = listview.Items[listview.Items.Count - 1];
listview.FocusedItem.Selected = true;
listview.BeginInvoke((MethodInvoker)delegate {
listview.FocusedItem.EnsureVisible();
});
Кроме того, если вы не хотите показывать горизонтальную полосу прокрутки, вам необходимо изменить размер столбцов ListView, чтобы они соответствовали ширине ClientArea
ListView, прежде чем вызывать BeginInvoke
.