none
Acumular valores RRS feed

  • Pregunta

  • Hola, mediante este código voy sumando los nombres de los productos de una venta que están en un datagridview, mi duda es como puedo hace para que no me sume los productos los cuales el nombre ya esta en la variable "productos". Esta variable la uso para se posterior almacenamiento en la base

    Por ejemplo así me suma: producto1, producto2, producto1. Quiero que me sume asi producto1, producto2, producto3.

      Dim productos As String = String.Empty
                        For Each row As DataGridViewRow In DataGridView2.Rows
                            productos += String.Concat(row.Cells("Column1").Value.ToString(), ",")
                        Next
    Saludos.

    miércoles, 18 de enero de 2017 14:55

Respuestas

  • Federico32113,

    Puedes utilizar Linq para recuperar los valores de la columna discriminando los valores repetidos.

    Dim productos As String = String.Join(", ", DataGridView2.Rows.Cast(Of DataGridViewRow)().
    					Select(Function(f) Convert.ToString(f.Cells("Column1").Value)).
    					Distinct().ToArray())

    No olvides indicar el espacio de nombres: Imports System.Linq


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    • Marcado como respuesta Federico32113 miércoles, 18 de enero de 2017 17:00
    miércoles, 18 de enero de 2017 15:10