У меня есть словарь, в котором в качестве ключей используется трехбуквенный код страны, а в качестве значений - название страны.
Dictionary<string, string> CountryList=new Dictionary<string, string>();
У меня также есть DataGridView и DataTable. Что я хотел бы сделать, так это создать DataGridViewComboBoxColumn для определенных столбцов в моих столбцах DataTable, которые отображают информацию о стране. Так, например, один из моих столбцов в моем DataTable называется Country
, и я хотел бы, чтобы в этом столбце было раскрывающееся поле со списком, в котором отображается название страны, а при выборе оно заполняет ячейку в DataTable. ключом из словаря (трехбуквенный код). Тем не менее, я полностью озадачен тем, как это сделать. Должен ли я установить DataSource на ключи, а DisplayMember на значения? Я попробовал это и получил ошибку:
DataGridViewComboBoxColumn buildCountries = new DataGridViewComboBoxColumn();
buildCountries.HeaderText = "List of Countries";
buildCountries.DataSource = CountryList.Keys.ToString();
buildCountries.DisplayMember = CountryList.Values.ToString();
Комплексная привязка данных принимает в качестве источника данных либо IList, либо IListSource.
Я не уверен, как это сделать.