1

我有一个DataGridView有两列的。一个是DataGridViewComboBoxColumn,另一个是DataGridViewButtonColumn。要从 中捕获按钮单击DataGridViewButtonColumn,我已经编写了CellClick事件并且它工作正常。但是,这并不是让我从DataGridViewComboBoxColumn“顺利”中做出选择。我的意思是我必须单击组合框两次才能显示下拉列表。我注意到每次点击都会CellClick被触发。但只有在第二次单击后才会弹出下拉菜单。解决这个问题的方法是什么?

4

2 回答 2

1

问题已通过将DataGridView'EditMode属性设置为EditOnEnter如下所述解决:http: //social.msdn.microsoft.com/forums/en-US/winformsdatacontrols/thread/c461b774-ece5-4fdd-86c5-90e5b6426690/

于 2012-07-05T13:39:13.940 回答
0

我发现的最佳解决方法是在鼠标移到当前行时保持选中状态,以防止多次单击,一个将焦点带到当前行,第二个选择组合框下拉列表,将以下代码添加到数据网格的鼠标移动事件:

    Private Sub DataGridView1_MouseMove(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles DataGridView1.MouseMove
    Dim theRow As Integer = DataGridView1.HitTest(e.X, e.Y).RowIndex
    If theRow < 0 Then
        Exit Sub
    End If
    Me.DataGridView1.CurrentCell = Me.DataGridView1.Rows(theRow).Cells(0)
End Sub
于 2012-06-02T04:31:41.093 回答