COMO PREENCHER UM LISTVIEW COM IMAGEM

THIAGOEMECAL 30/08/2010 08:54:34
#351680
Pessoal Chegeui a procurar aki como preencher o listvoew com imagem!

nao encontrei nada q eu posso utlizar!

tenho um banco access q salva todos os caminhos das imagens.

Preciso saber como faço pra pegar os endereços e mostrar no listview estas imagens..

Espero q nao seja muito dificil. rss


Desde já agradeço a ajuda!
THIAGOEMECAL 30/08/2010 10:09:12
#351690
Ngm ?? rs
ENGALEXANDRE 31/08/2010 11:03:28
#351797
Resposta escolhida
Olá THIAGOEMECAL

Não sei se serve, mas fiz o seguinte: criei um form com um ListView e um PictureBox. O ListView lista os registros do banco Access, já o PictureBox mostra a imagem do registro selecionado.
Em anexo, dentro do arquivo compactado, existem duas pastas: Uma pasta tem o projeto criado em VBNET com o form e a conexão com o banco. A pasta teste foi a pasta criada para armazenar as imagens e o banco de dados. Nessa pasta tem, portando, as quatro imagens que usei como exemplo e o banco criado, que se chama BDTeste.mdb. Para funcionar, essa pasta deve ser colocada direto no [Ô]C:[Ô]. Fica assim:
[Ô]C:    este\[Ô]
Quando o form é carregado aparece o ListView preenchido com os registros do banco. Conforme você clica no registro, ao lado aparece a imagem correspondente àquele registro. Se clicar em outro registro, outra imagem vai aparecer, e assim por diante.

Os códigos fonte aparecem no projeto, mesmo assim estou colocando os mesmos logo abaixo:

Public Class Form1

Public i As Integer

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Dim conn As New OleDb.OleDbConnection

conn.ConnectionString = [Ô]Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:    este\BDTeste.mdb;User Id=admin;Password=;[Ô]

Dim cmd As OleDb.OleDbCommand

cmd = conn.CreateCommand

cmd.CommandText = [Ô]Select caminho,imagem,codimagem From tbimagem[Ô]

conn.Open()

Dim leitor As OleDb.OleDbDataReader

leitor = cmd.ExecuteReader

Dim i As Integer

i = 0

For i = 0 To leitor.FieldCount - 1

ListView1.Columns.Add(leitor.GetName(i).ToString, 110, HorizontalAlignment.Left)

Next

ListView1.View = View.Details

Do While leitor.Read

Dim novoitem As New ListViewItem

novoitem.Text = leitor(0)

For i = 1 To leitor.FieldCount - 1

If leitor(i) Is DBNull.Value Then

novoitem.SubItems.Add([Ô] [Ô])

Else

novoitem.SubItems.Add(leitor.Item(i).ToString)

End If

Next

ListView1.Items.Add(novoitem)

Loop

conn.Close()

conn.Dispose()

End Sub

Private Sub ListView1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListView1.Click

Dim picFoto As System.Windows.Forms.PictureBox

picFoto = New System.Windows.Forms.PictureBox

Dim path As String

path = Me.ListView1.SelectedItems(i).Text.ToString

Me.picFoto.Load(path)

End Sub

Private Sub cmdSair_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdSair.Click

Me.Close()

End Sub
End Class


Abraço,

Alexandre
THIAGOEMECAL 02/09/2010 14:02:59
#352029
Caro amigo ENGALEXANDRE

Agradeço pela ajuda!
Tópico encerrado , respostas não são mais permitidas