Para llenar de elementos un combobox existe diversas formas de hacerlo, y esta vez te mostrare como hacerlo a partir de una tabla mapeada en Entity Framework.
En el siguiente ejemplo, ya existiendo un Entity Framework en nuestro proyecto, hacemos la consulta deseada a la tabla con los filtros y ordenamiento deseado, y seleccionamos que campo será mostrado y que campo será el valor, llenamos nuestro combobox llamado cboCatalogo:
using (MiEntity db = new MiEntity()) {
//realizamos la consulta aplicando filtros y ordenamientos
//y convertimos a lista, esto ultimo es Importante
cboCatalogo.DataSource = db.tabla.Where(d => d.algo == 1).OrderBy(d=>d.nombre).ToList();
//campo que vera el usuario
cboCatalogo.DisplayMember = "nombre";
//campo que es el valor real
cboCatalogo.ValueMember = "id";
}
De esta manera tenemos más control con lo que deseamos mostrar, teniendo el poder de filtrar u ordenar nuestra consulta.
