private IEnumerator <Tarea> GetEnumerator() { for (int i = 0; i < ListasHerencia.Count; i++) { foreach (Tarea tarea in (IEnumerable <Tarea>)ListasHerencia.GetValueAt(i)) { if (!TareasOcultas.Contains(tarea)) { yield return(tarea); } } } for (int i = 0; i < Tareas.Count; i++) { yield return(Tareas.GetValueAt(i)); } }