2012-05-28 3 views
1

У меня есть DataGridView с двумя столбцами. Один из них - DataGridViewComboBoxColumn, а другой - DataGridViewButtonColumn. Чтобы зафиксировать нажатие кнопки с DataGridViewButtonColumn, я написал событие CellClick, и он отлично работает. Однако это не делает мой выбор из DataGridViewComboBoxColumn 'smooth'. Я имею в виду, что я должен дважды щелкнуть на комбинированной коробке, чтобы отобразить раскрывающийся список. Я заметил, что при каждом нажатии, CellClick уволен. Но только после второго щелчка выпадающего списка выскочит. Какая работа для этого?Событие CellClick: выбор из combo-box не является гладким

ответ

0

Лучшая работа, которую я нашел, заключается в том, чтобы сохранить текущую строку, выбранную при перемещении мыши по ней, чтобы предотвратить щелчок более одного раза, один для приведения фокуса в текущую строку и второй, чтобы выбрать раскрывающийся список со списком, Добавить После кода на движение мыши случае DataGrid:

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 
+0

она до сих пор не работает. Мне все равно придется дважды щелкнуть в поле со списком, чтобы показать раскрывающийся список. – badmaash

Смежные вопросы