2011-12-17 5 views
1

В простой combobox, когда comboboxstyle устанавливается как Simple и пользователь что-то вводит в поле, а затем нажимает Enter, запускается событие KeyUp. В datagridview, когда у меня есть ComboboxColumn и стиль, заданный как событие Simple KeyUp, не запускается и KeyPress и KeyDown. И я создал собственное собственное datagridview, а KeyUp в editmode тоже не запускается. И я создал свои пользовательские DataGridViewComboBoxCell и OnKeyUp, EnterUnsharesRow, события KeyDownUnsharesRow не вызываются. Когда пользователь вводит что-то в эту comboboxcell и нажимает Enter, этот текст очищается. Как зафиксировать введенный текст в ячейке и какое событие запущено?DataGridViewComboBoxCell с ComboBoxStyle Простой не поймать Клавиша Enter

Благодаря

ответ

2

Вы должны получить доступ к основному контролю редактирования во время мероприятия EditingControlShowing в DataGridView.

void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e) 
{ 
    if (e.Control is DataGridViewComboBoxEditingControl) 
    { 
     DataGridViewComboBoxEditingControl cb = 
      e.Control as DataGridViewComboBoxEditingControl; 
     cb.DropDownStyle = ComboBoxStyle.Simple; 

     cb.KeyUp += new KeyEventHandler(cb_KeyUp); 
    } 
} 

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

  • Нет связанных вопросов^_^