防止在DataGridView中选择单元格
本文关键字:选择 单元格 DataGridView | 更新日期: 2023-09-27 18:15:04
我正在使用winforms中的DataGridView
,我正在处理CellPainting
事件以自己绘制所有单元格。
我的网格是虚拟的,它所有的数据都存储在一个自定义的数据结构中,以MemoryStream
为中心。
我所有的绘画都很顺利,直到用户Shift +点击一次选择大范围的单元格(25,000+),这些单元格必须添加到选定的单元格集合中,设置了一堆标志,以及其他消耗性能的操作。
是否有任何方法可以防止DataGridView"选择"一个单元格,以便我可以以更有效的方式单独处理此操作?
我对这个问题有点困惑。
如果你不希望他们能够选择多个单元格,设置
dataGridView.MultiSelect = false
你说他们ctrl+click 25k单元格-你是建议他们一次选择25k单元格(这就是ctrl+click的工作方式)吗?如果您的意思是他们通过shift-click来选择一个范围,那么只需处理SelectionChanged
事件,并对dataGridView.SelectedRows
执行任何需要执行的操作。对于整个选区,SelectionChanged
只会被调用一次。