У меня есть простой DataGridView:DataGridView TextBox колонка с автозаполнения, заполняющую другие клетки
У меня есть класс:
public class TemplateItem
{
public string Name { get; set; }
public decimal Price { get; set; }
}
и список для хранения шаблонов:
List<TemplateItem> templates = new List<TemplateItem>();
// Some code to populate the list
Для ячейки «Name» в сетке я хочу:
- варианта отображение автозаполнение из
templates
списка, когда пользователь вводит в ячейке - автоматически установить «Цену» клетку к цене опциона автозаполнения, что пользователь выбрал (пользователь может изменить цену после)
- позволяют пользователю вводить что-то не доступно в списке
templates
Я знаю, как включить автозаполнение с помощью EditingControlShowing события, как в this question.
Я не знаю, как определить выбор варианта автозаполнения. Using KeyDown event не работает для меня - он никогда не срабатывает.
И я не знаю, как получить цену выбранного варианта. Предположим, что я смог поймать событие «option selected», я смог пройти через шаблоны и найти одно с тем же именем ... но это кажется уродливым кодом для меня. Я должен как можно скорее передать информацию о цене за каждый вариант, не так ли?