none
Como obtener el valor de algunos campos de todos Objetos en VB.NET? RRS feed

Todas las respuestas

  • Hola NewsomeCold,

    a continuación te pongo un ejemplo:

    Public Class Form1
        Public Property Personas() As List(Of Persona)
    
        Private Sub Form1_Shown(sender As Object, e As EventArgs) Handles Me.Shown
    
            Personas = New List(Of Persona)
    
            Personas.Add(New Persona() With {.Id = 1, .PrimerNombre = "Nombre1", .Apellido = "Apellido1"})
            Personas.Add(New Persona() With {.Id = 2, .PrimerNombre = "Nombre2", .Apellido = "Apellido2"})
            Personas.Add(New Persona() With {.Id = 3, .PrimerNombre = "Nombre3", .Apellido = "Apellido3"})
            Personas.Add(New Persona() With {.Id = 4, .PrimerNombre = "Nombre4", .Apellido = "Apellido4"})
    
        End Sub
    
        Private Sub GetPrimerNombreButton_Click(sender As Object, e As EventArgs) Handles GetPrimerNombreButton.Click
            ListBox1.Items.Clear()
            Dim PrimerNombre = Personas.Select(Function(Persona) Persona.PrimerNombre).ToList()
            ListBox1.DataSource = PrimerNombre
        End Sub
    End Class
    ''' <summary>
    ''' Pertenece a su propio archivo
    ''' </summary>
    Public Class Persona
        Public Property Id() As Integer
        Public Property PrimerNombre() As String
        Public Property Apellido() As String
    
        Public Overrides Function ToString() As String
            Return $"{PrimerNombre} {Apellido}"
        End Function
    End Class
    
    'Para realizar un order by 
    Dim PrimerNombre = Personas.
            OrderBy(Function(Persona) Persona.PrimerNombre).
            Select(Function(Persona) Persona.PrimerNombre).
            ToList()
    
    
    'o
    Dim PrimerNombre = Personas.
            OrderByDescending(Function(Persona) Persona.PrimerNombre).
            Select(Function(Persona) Persona.PrimerNombre).
            ToList()

    Espero que te sea de ayuda. Por favor no olvides marcar una respuesta si resolviste tu consulta (debajo de cada post hay una opción que dice “Marcar como Respuesta”). Quedo pendiente de cualquier actualización. Gracias por levantar tu consulta en los foros de msdn.

     

    Saludos cordiales

    Gabriel Castro

     ____________________________ 

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde. 

    jueves, 15 de octubre de 2020 1:26
    Moderador