todavía no he logrado hacer lo que en principio quería hacer, que era dividir la colección principal en variables con cuatro números cada una
¿Cómo que no?:
Citar
Código
Dim parts As Integer = 4 Dim splittedCols As IEnumerable(Of IEnumerable(Of Integer)) = From index As Integer In Enumerable.Range(0, CInt(Math.Ceiling(mainCol.Count() / parts))) Select mainCol.Skip(index * parts).Take(parts)
para yo después con cada variable con los números asignados poder concatenar las que yo quiera entre ellas y mostrar ese resultado en un listbox
Código:
dim combination as ienumerable(of integer) = splittedCols(Índice).Concat(splittedCols(Índice))
¿eso?
Saludos
EDITO:
Te pondré el primer problema más fácil con esta función genérica (lee el ejemplo de uso):
Código
''' <remarks> ''' ***************************************************************** ''' Snippet Title: Split Collection Into Parts ''' Code's Author: Elektro ''' Date Modified: 08-March-2015 ''' Usage Example: ''' Dim mainCol As IEnumerable(Of Integer) = {1, 2, 3, 4, 5, 6, 7, 8, 9} ''' Dim splittedCols As IEnumerable(Of IEnumerable(Of Integer)) = SplitColIntoParts(mainCol, amount:=4) ''' splittedCols.ToList.ForEach(Sub(col As IEnumerable(Of Integer)) ''' Debug.WriteLine(String.Join(", ", col)) ''' End Sub) ''' ***************************************************************** ''' </remarks> ''' <summary> ''' Splits an <see cref="IEnumerable(Of T)"/> into the specified amount of parts. ''' </summary> ''' <typeparam name="T"></typeparam> ''' <param name="collection">The collection to split.</param> ''' <param name="amount">The parts amount.</param> ''' <returns>IEnumerable(Of IEnumerable(Of T)).</returns> ByVal amount As Integer) As IEnumerable(Of IEnumerable(Of T)) Return From index As Integer End Function