none
DataGridView - Populando a partir de um List(Of Objeto) RRS feed

  • Pergunta

  • Salve!

    Aplicação sendo feita com VB2005 .

    Preciso carregar um datagridview a partir de uma lista do seguinte objeto (clsEmpregadoW) e os objetos associados (clsEspecialidadeW e clsEnderecoW):

    Imports System.Collections.Generic
    
    Public Class clsEmpregadoW
    
    #Region "Variáveis privadas"
    
      Private _colaboradorID As Int16
      Private _nome As String
      Private _orgao As String
      Private _descSetor As String
      Private _especialidades As New List(Of clsEspecialidadeW)
      Private _enderecos As New List(Of clsEnderecoW)
      Private _telefones As New List(Of clsTelefoneW)
    
    #End Region
    
    #Region "Propriedades"
    
      Public Property colaboradorID() As Int16
        Get
          Return _colaboradorID
        End Get
        Set(ByVal value As Int16)
          _colaboradorID = value
        End Set
      End Property
    
      Public Property nome() As String
        Get
          Return _nome
        End Get
        Set(ByVal value As String)
          _nome = value
        End Set
      End Property
    
      Public Property orgao() As String
        Get
          Return _orgao
        End Get
        Set(ByVal value As String)
          _orgao = value
        End Set
      End Property
    
      Public Property descSetor() As String
        Get
          Return _descSetor
        End Get
        Set(ByVal value As String)
          _descSetor = value
        End Set
      End Property
    
      Public Property especialidades() As List(Of clsEspecialidadeW)
        Get
          Return _especialidades
        End Get
        Set(ByVal value As List(Of clsEspecialidadeW))
          _especialidades = value
        End Set
      End Property
    
      Public Property enderecos() As List(Of clsEnderecoW)
        Get
          Return _enderecos
        End Get
        Set(ByVal value As List(Of clsEnderecoW))
          _enderecos = value
        End Set
      End Property
    
      Public Property telefones() As List(Of clsTelefoneW)
        Get
          Return _telefones
        End Get
        Set(ByVal value As List(Of clsTelefoneW))
          _telefones = value
        End Set
      End Property
    
    #End Region
    End Class
    
    Public Class clsEspecialidadeW
    
    #Region "Variáveis privadas"
    
      Private _id As Int16
      Private _especialidade As String
    
    #End Region
    
    #Region "Propriedades"
    
      Public Property Id() As Int16
        Get
          Return _id
        End Get
        Set(ByVal value As Int16)
          _id = value
        End Set
      End Property
    
      Public Property Especialidade() As String
        Get
          Return _especialidade
        End Get
        Set(ByVal value As String)
          _especialidade = value
        End Set
      End Property
    
    #End Region
    End Class
    
    
    Imports System.Collections.Generic
    
    Public Class clsEnderecoW
    
    #Region "Variáveis privadas"
    
      Private _enderecoID As Int16
      Private _colaboradorID As Int16
      Private _logradouro As String
      Private _numero As String
      Private _complemento As String
      Private _bairro As String
      Private _cidade As String
      Private _estado As String
      Private _cep As String
    
    #End Region
    
    #Region "Propriedades"
    
      Public Property enderecoID() As Int16
        Get
          Return _enderecoID
        End Get
        Set(ByVal value As Int16)
          _enderecoID = value
        End Set
      End Property
    
      Public Property colaboradorID() As Int16
        Get
          Return _colaboradorID
        End Get
        Set(ByVal value As Int16)
          _colaboradorID = value
        End Set
      End Property
    
      Public Property logradouro() As String
        Get
          Return _logradouro
        End Get
        Set(ByVal value As String)
          _logradouro = value
        End Set
      End Property
    
      Public Property numero() As String
        Get
          Return _numero
        End Get
        Set(ByVal value As String)
          _numero = value
        End Set
      End Property
    
      Public Property complemento() As String
        Get
          Return _complemento
        End Get
        Set(ByVal value As String)
          _complemento = value
        End Set
      End Property
    
      Public Property bairro() As String
        Get
          Return _bairro
        End Get
        Set(ByVal value As String)
          _bairro = value
        End Set
      End Property
    
      Public Property cidade() As String
        Get
          Return _cidade
        End Get
        Set(ByVal value As String)
          _cidade = value
        End Set
      End Property
    
      Public Property estado() As String
        Get
          Return _estado
        End Get
        Set(ByVal value As String)
          _estado = value
        End Set
      End Property
    
      Public Property cep() As String
        Get
          Return _cep
        End Get
        Set(ByVal value As String)
          _cep = value
        End Set
      End Property
    
    #End Region
    End Class
    

    Como visto na classe clsEmpregadoW, algumas das propriedades são listas de outros objetos (enderecos - List(Of clsEnderecoW) e especialidades - List(Of clsEspecialidadeW) ).

    No datagridview preciso mostrar todas as especialidades de um empregado assim como  cidades/bairros (que são propriedades da classe clsEnderecoW). Pensei em mostrar essas informações em colunas do tipo combobox.

    Só que não estou sabendo como carregar a minha lista e, principalmente, as informações das propriedades que têm mais de um valor (especialidades e cidades/bairros). Andei procurando no help, nos vários "how to ...", internet e ainda não encontrei nada que pudesse me ajudar.

    Conto com os feras desse fórum para uma ajuda.

    Grato pela atenção de todos.

    Paulo Ricardo Ferreira

    quinta-feira, 25 de novembro de 2010 12:36

Respostas

Todas as Respostas