public override ComboBoxSourceList RellenaComboInstructores(long oid, long tipo, int index, long oid_submodulo) { long oid_clase = oid; if (oid_clase <= 0) { ComboBoxSourceList combo_list = new ComboBoxSourceList(); combo_list.Add(new ComboBoxSource(0, "")); Datos_Instructores.DataSource = combo_list; return(combo_list); } List <Submodulo_Instructor_PromocionInfo> list = new List <Submodulo_Instructor_PromocionInfo>(); if (_profesores == null) { _profesores = InstructorList.GetInstructoresHorariosList(EntityInfo.OidPromocion, EntityInfo.FechaInicial, EntityInfo.FechaFinal); } if (_disponibilidades == null) { _disponibilidades = _profesores.GetDisponibilidadesProfesores(EntityInfo.FechaInicial); } DisponibilidadInfo disp = null; foreach (InstructorInfo profesor in _profesores) { if (Horario.ProfesorLibre(_instructores_asignados, index, profesor.Oid, _lista_sesiones, _profesores, -1, EntityInfo.FechaInicial, _disponibilidades) && _disponibilidades.TryGetValue(profesor.Oid, out disp) && disp.Semana[index]) { Instructor_PromocionInfo promo = profesor.Promociones.GetItemByProperty("OidPromocion", EntityInfo.OidPromocion); if (tipo != 2) { Submodulo_Instructor_PromocionInfo sub = promo != null?promo.Submodulos.GetItemByProperty("OidSubmodulo", oid_submodulo) : null; if (sub != null) { list.Add(sub); } } else { Submodulo_Instructor_PromocionInfo sub = promo != null?promo.Submodulos.GetItemByProperty("OidModulo", _lista_sesiones[index].OidModulo) : null; if (sub != null) { list.Add(sub); } } } } //foreach (Submodulo_Instructor_PromocionInfo info in _submodulos) //{ // if (info.OidSubmodulo == oid_submodulo && info.OidPromocion == EntityInfo.OidPromocion) // { // if (Horario.ProfesorLibre(_instructores_asignados, index, info.OidInstructor, // _lista_sesiones, _profesores, -1, EntityInfo.FechaInicial, _disponibilidades)) // list.Add(info); // } //} Submodulo_Instructor_PromocionList lista = Submodulo_Instructor_PromocionList.GetChildList(list); _combo_instructores = new Library.Instruction.HComboBoxSourceList(lista, _profesores); _combo_clases.Childs = _combo_instructores; Datos_Instructores.DataSource = _combo_clases.Childs; return(_combo_clases.Childs); }