Hola que tal, bueno yo en C# lo hago de la siguiente manera:
1.- Creo mis entidades
Código C#:
Ver originalpublic string Descripcion { get; set; }
public Int32 Identificador { get; set; }
2.- En una lista, le anexo los valores a las entidades previamente creadas.
Código C#:
Ver originalList<Entidades> lista = new List<Entidades>();
lista.Add( funcion(reader) );
// Esta función es la mas importante, puesto que asigna los valores a las entidades
private static Entidades funcion(IDataReader reader)
{
Entidades reg = new Entidades();
reg.Descripcion = reader["Descripcion"].ToString();
reg.Identificador = Convert.ToInt32(reader["Identificador"].ToString());
}
3.- Anexo al DataSource el valor de retorno de la lista.
4.- Indico que valores quiero que se muestren en el combo.
Código C#:
Ver originalcomboBox.DisplayMember = "Descripcion";
comboBox.ValueMember = "Identificador";
Y eso es todo y hasta el momento no tengo ningún problema al llenar los combos.