【发布时间】:2018-10-30 03:47:34
【问题描述】:
如果你有一个有 2 列的 Datagridview,一个是 TextBoxColumn,另一个是 ButtonColumn:
选择文本单元格。 现在突出显示/选择单元格内的文本并在选择时(按住鼠标按钮),如果将鼠标光标移动到相邻的 ButtonColumn 上并释放鼠标按钮,那么即使我在文本单元格内执行了 MouseDown,DatagridView 也会为按钮列触发 CellContentClick。
我希望要触发 CellContentClick,MouseDown 和 MouseUp 必须都在同一个 Cell 中执行。我的用户也希望如此。
有人知道解决方法/解决方法吗?
【问题讨论】:
-
您是否调试过代码并检查您在
e.ColumnIndex中获得的值?和TextBoxColumn还是ButtonColumn一样吗? -
我可以确认这一点。奇怪,接近错误。但 imo 对 CellContentClick 的任何使用都容易出错,最好完全避免。
-
感谢您的确认。 Microsoft 建议使用 CellContentClick 来检测按钮按下。你有其他方法来检测按钮按下吗?
-
@Chetan 是的,我检查了,ColumnIndex 设置为按钮的列
-
这是一种方式,但 CellClick 应该也能正常工作。
标签: c# winforms datagridview datagridviewbuttoncolumn