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.