C#DataGridView MouseClick + CTRL不调用CellClick()EventHandler

时间:2009-10-23 10:17:53

标签: c# winforms datagridview

我正在使用 WinForms DataGridView 。 我为选择/取消选择1项(项目名称)注册了CellClick个事件。 问题是用 CTRL 按钮按住+ Mouseclick 这个事件没有被解雇。

这是我的EventHandler:

private void dataGridView_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.RowIndex < 0 || e.RowIndex >= dataGridView.Rows.Count ||
                e.ColumnIndex < 0 || e.ColumnIndex >= dataGridView.Columns.Count) return;

            if (dataGridView.Rows[e.RowIndex].Selected)
                this.selectedProject = dataGridView.Rows[e.RowIndex].DataBoundItem as GlobalProject;
            else this.selectedProject = null;

            OnChoose(new OnChooseProjectEventArgs(this.selectedProject != null));            
        }

为什么?请问是什么解决方法

1 个答案:

答案 0 :(得分:0)

也许您取消订阅某处的cellclick事件。通常,即使按住CTRL键,单元格也会点击(我只是在示例项目中尝试过)。

或许你的应用程序(或表单中的另一个控件)有一个全局钩子,它可以捕获CTRL键并在其他地方处理它。