Я хочу заполнить DataGridViewComboBoxColumn
.Combobox
должен представлять это struct
internal struct IndexField
{
public IndexField(int id, string name)
{
ID = id;
Name = name;
}
public int ID { get; private set; }
public string Name { get; private set; }
}
Реализация:
public void Populate(IndexField[] indexFields)
{
DataGridViewComboBoxColumn indexFieldColumn = new DataGridViewComboBoxColumn()
{
HeaderText = "Index Fields"
};
indexFieldColumn.DataSource = indexFields;
indexFieldColumn.DisplayMember = nameof(IndexField.Name);
indexFieldColumn.ValueMember = nameof(IndexField.ID);
dataGridView.Columns.Add(indexFieldColumn);
for (int i = 0; i < 5; i++) // FOR TESTING PURPOSES ONLY => add some rows
{
dataGridView.Rows.Add(indexFields[0].Name); // use first combobox item as selected
}
}
При запуске кода я получаю эту ошибку
![enter image description here](https://i.stack.imgur.com/N0suc.jpg)
Я хочу настроить отображаемое значение, но также настроить элемент значения.HTML-эквивалентом будет
<select>
<option value="ID1">Item1</option>
<option value="ID2">Item2</option>
<option value="ID3">Item3</option>
</select>
Как мне этого добиться?