检查所选项目是否可见[详细信息视图中的虚拟ListView]

本文关键字:视图 虚拟 ListView 详细信息 选项 项目 是否 检查 | 更新日期: 2023-09-27 18:28:25

subj有什么好的/短的解决方案吗?

我能想到:

  • 获取TopItem索引(在VirtualMode中,在创建项目之前它可以为null吗?),如果所需项目的索引较少,则它是不可见的,否则获取底部可见索引(顶部索引+listView.ClientSize.Height / GetItemRect(TopItem).Height),如果需要项目的索引较多,则它不可见。否则可见。

  • 以某种方式检测滚动并做些什么。

或者也许有更简单的方法?

检查所选项目是否可见[详细信息视图中的虚拟ListView]

listView1.Items[SelectedItemIndex].Bounds.IntersectsWith(listView1.ClientRectangle)

这将解决你的问题。