在 datagridview 上启用“多选”

Posted

技术标签:

【中文标题】在 datagridview 上启用“多选”【英文标题】:Enabling "Multi select" on a datagridview 【发布时间】:2011-05-17 02:56:31 【问题描述】:

我想强制 datagridview 表现得好像我一直在按住 Control 键。例如;如果我单击一个单元格,它会突出显示,如果我单击另一个单独的单元格,它会突出显示,而不会取消选择第一个单元格。

这样做的原因是我在触摸屏上运行应用程序,并且需要此功能而无需键盘。

我不想模拟在整个表单中按住 ctrl,因为这可能会弄乱我的其他一些对象。但如果没有人能想到更好的解决方案,我会的。

我启用了 datagridview.multiSelect。

【问题讨论】:

【参考方案1】:

虽然不理想,但您可以处理 OnMouseUp 事件并获取当前选定行的列表以及刚刚单击的行,然后以编程方式再次选择所需的行。

您需要查看当前行是否已经选择它,然后在必要时切换取消选择它。

我相信有人会对如何做到这一点有更好的想法,但如果没有,无论如何都试试这个。

【讨论】:

我试了一下,在较慢的机器(我们正在使用)上以编程方式打开和关闭单元有相当大的延迟它可能会这样做,但它很混乱......谢谢。 修复了延迟。我只是在后台有一个垃圾循环。谢谢。

以上是关于在 datagridview 上启用“多选”的主要内容,如果未能解决你的问题,请参考以下文章

GWT - Datagrid:键盘单选,启用多选时

(this.internalValue || []).findIndex 不是在 v-select 上启用多选时的函数

在DataGridView控件中启用换行

datagridview 更新后表单分辨率突然改变

单击datagridview中的复选框时启用按钮?

winform dataGridView中如何添加单选按钮列?