如何在listview中使用ensurevisible方法

本文关键字:ensurevisible 方法 listview | 更新日期: 2023-09-27 17:51:01

我有一个ListView 包含100个项目,我们可以根据选定的项目进行某些活动。我使用EnsureVisible()方法来调整可见性,我的ListView刷新时间来更新数据。

现在我面临的问题是,如果我选择列表中的第一个项目,然后我开始向下分页(可能选择第21、59个)和75)在这个选择中,我可以突出显示第1、24和56 .在这种情况下,当控件突然刷新页面时,只有第一个选择保留焦点,我失去了其他选择,必须单独或更快地重新进行。

所以我的问题是我如何选择多个项目,并做的动作,而ListView是在一定的间隔刷新,虽然EnsureVisible()使用填充数据?

这是我现有的代码:

 if (_listviewFirst.SelectedItems.Count > 0)
        {
            _listviewFirst.SelectedItems[_listviewFirst.SelectedItems.Count - 1].EnsureVisible();
            _listviewFirst.SelectedItems[0].EnsureVisible();
        }

如何在listview中使用ensurevisible方法

我将使用ListView.ItemSelectionChanged (MSDN)事件并从选定项目的List中添加/删除项目(或其引用)。当控件刷新时,您应该迭代选中的项,并将这些项更新为ListView中的选中项。

您将能够利用事件处理程序中的e.IsSelectede.Iteme.ItemIndex来完成此操作。

我根本不会使用EnsureVisible