LISTVIEW VB.NET - ADODB E ACCESS

LEONARDOSILVEIR 22/02/2011 01:19:28
#366190
Pessoal estou em dúvida de como preencher um listview utilizando uma conexao adodb em um banco access, segue abaixo exemplo do meu codigo, porém no final do mesmo nao consigo preencher o listview. Aguardo ideias...

[txt-color=#0000f0]Public Class Form1[/txt-color] Private Conexao As New ADODB.Connection
Private tabela As New ADODB.Recordset
Private Sub Abrirconexao()
Conexao = New ADODB.Connection
tabela = New ADODB.Recordset
Conexao.ConnectionString = [Ô]Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Cadastro.mdb[ô][Ô]
Conexao.Open()
[txt-color=#0000f0] End Sub[/txt-color] Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
[ô] Define as colunas e propriedades da lista
With Me.lstmostra
lstmostra.Columns.Add([Ô]Login[Ô], 50, HorizontalAlignment.Left)
lstmostra.Columns.Add([Ô]Nome[Ô], 100, HorizontalAlignment.Left)
lstmostra.Columns.Add([Ô]Email[Ô], 250, HorizontalAlignment.Left)
lstmostra.Columns.Add([Ô]Nivel Acesso[Ô], 140, HorizontalAlignment.Left)
lstmostra.FullRowSelect = True
lstmostra.GridLines = True
lstmostra.View = View.Details
End With

Call Abrirconexao()
[txt-color=#e80000] [ô]Preenche o Listview (lstmostra)
Dim LVITEM As New ListViewItem
tabela.Open([Ô]SELECT * FROM CADASTRO_USUARIOS WHERE MMC_LOGIN LIKE [ô]AS070484[ô][Ô], Conexao)
LVITEM.SubItems(0) = tabela.Fields([Ô]MMC_LOGIN[Ô]).Value
LVITEM.SubItems(1) = tabela.Fields([Ô]MMC_NOME[Ô]).Value
LVITEM.SubItems(2) = tabela.Fields([Ô]MMC_EMAIL[Ô]).Value
LVITEM.SubItems(3) = tabela.Fields([Ô]MMC_NIVEL[Ô]).Value[/txt-color]
Conexao.Close()
[txt-color=#0000f0] End Sub[/txt-color]
[txt-color=#0000f0]End Class[/txt-color]
PEGUDO 22/02/2011 09:46:54
#366200
Resposta escolhida
Primeiro você deve definir o primeiro item do listview:

Exemplo de um programa de ponto que eu fiz:

[txt-color=#0000f0]Dim[/txt-color] Item [txt-color=#0000f0]As ListViewItem[/txt-color]
[txt-color=#0000f0]Dim[/txt-color] C [txt-color=#0000f0]As New[/txt-color] ADODB.Connection, RecSet [txt-color=#0000f0]As[/txt-color] ADODB.Recordset

frmPrincipal.ListNomes.Items.Clear() [txt-color=#007100][ô]Limpando o ListView[/txt-color]
C.Open(Conexao) [txt-color=#007100][ô]Abrindo conexão com o BD[/txt-color]

RecSet = C.Execute([txt-color=#e80000][Ô]select * from dbgestao.tbloperadores where status<>0[Ô][/txt-color]) [txt-color=#007100][ô]Buscando dados do BD[/txt-color]

[txt-color=#0000f0]While Not[/txt-color] RecSet.EOF
[txt-color=#007100][ô]O nome do meu ListView é ListNomes[/txt-color]
Item = frmPrincipal.ListNomes.Items.Add(Nome) [txt-color=#007100][ô]Definindo o primeiro item[/txt-color]
Item.SubItems.Add(Entrada) [txt-color=#007100][ô]Inserindo dados na coluna seguinte[/txt-color]
Item.SubItems.Add(Almoco) [txt-color=#007100][ô]Inserindo dados na coluna seguinte[/txt-color]
Item.SubItems.Add(Retorno) [txt-color=#007100][ô]Inserindo dados na coluna seguinte[/txt-color]
Item.SubItems.Add(Saida) [txt-color=#007100][ô]Inserindo dados na coluna seguinte[/txt-color]

RecSet.MoveNext()
[txt-color=#0000f0]End While[/txt-color]

RecSet = [txt-color=#0000f0]Nothing[/txt-color]
C.Close()

No seu caso, tente:

[txt-color=#0000f0]Dim[/txt-color] LVITEM [txt-color=#0000f0]As ListViewItem[/txt-color]

LVITEM = [txt-color=#0000f0]Me[/txt-color].lstmostra.Items.Add(tabela.Fields([txt-color=#e80000][Ô]MMC_LOGIN[Ô][/txt-color]).Value.ToString)
LVITEM.SubItems.Add(tabela.Fields([txt-color=#e80000][Ô]MMC_NOME[Ô][/txt-color]).Value.ToString)
LVITEM.SubItems.Add(tabela.Fields([txt-color=#e80000][Ô]MMC_EMAIL[Ô][/txt-color]).Value.ToString)
LVITEM.SubItems.Add(tabela.Fields([txt-color=#e80000][Ô]MMC_NIVEL[Ô][/txt-color]).Value.ToString)
Conexao.Close()
MARCOSLING 22/02/2011 10:07:15
#366201
se vc está usando .net, pq não usa o ado.net?
LEONARDOSILVEIR 22/02/2011 23:46:25
#366297
MarcosLIng, poderia por favor passar um exemplo de como ficaria no ado.net?
JONATHANSTECKER 17/03/2011 20:03:55
#368336
Citação:

:
MarcosLIng, poderia por favor passar um exemplo de como ficaria no ado.net?



Artigo completo e com código fonte.
VB .NET- Manutenção de dados com ListView, ADO .NET usando DAL - I
VB .NET- Manutenção de dados com ListView, ADO .NET usando DAL - II
Tópico encerrado , respostas não são mais permitidas