2014-02-14 4 views
0

У меня есть проект Windows Form, и я хочу запустить событие всякий раз, когда изменяется содержимое поля со списком. Обработчик события по умолчанию, SelectedIndexChanged, отлично работает, когда пользователь выбирает элемент из выпадающего меню, но не запускается, если пользователь вручную вводит что-то. Я пробовал другие аналогичные события, перечисленные the documentation, но ни одно из них не имеет требуемого поведения , Как я могу запустить событие в обоих случаях?Windows Forms Combo Box Изменено событие

ответ

0

Мероприятие, которое вы ищете, является TextChanged. Это событие не отображается как событие ComboBox, потому что оно унаследовано; однако полный список можно найти here. Для того, чтобы добавить это событие, поместите следующую строку в форме конструктора, после InitializeComponents():

yourComboBox->TextChanged += 
gcnew System::EventHandler(this, &MyForm::yourComboBox_TextChanged); 

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