Это подробно описано в этой статье MSDN .
Что вам нужно сделать, это установить ValueMember столбца ComboBox в свойство, которое возвращает ссылку на сам бизнес-объект.
То есть, скажем, у вас есть объект Employee
, и список из них является источником данных для столбца ComboBox. Сотрудник, возможно, будет выглядеть так:
public Employee
{
int Age { get; set; }
string Name { get; set;}
Employee Self
{
get { return this; }
}
}
Затем вы создаете столбцы ComboBox следующим образом:
DataGridViewComboBoxColumn col = new DataGridViewComboBoxColumn();
col.Name = "Combo";
col.ValueMember = "Self";
col.DisplayMember = "Name";
datagridview1.Columns.Add(col);
Затем, когда вы получаете свойство Value ячейки ComboBox, вы возвращаете объект Employee:
Employee e = datagridview1.Rows[0].Cells["Combo"].Value as Employee;