AJUDA! LISTVIEW - VB.NETOM O LISTVIEW

JMSGRILO 07/05/2011 12:43:30
#373412
Olá pessoal! estou com dificuldades com o listview, onde preciso colocar os dados... até ai tudo bem já tenho a conexão os comandos são aceitos porem tenho 4 colunas, ai é que vem o prblema, não tenho a minina noção de como colocar os dados em cada coluna, ou seja, Coluna01 deve ser igual ao campo X da tabela de produtos. Estou usando o seguinte código:

Private Sub carregaitem()
con.Open()
Dim cmd As New OleDbCommand([Ô]select * from CPPedidosLan[Ô], con)
Dim leitor As OleDbDataReader = cmd.ExecuteReader()
lvdados.View = View.Details

Do While leitor.Read()
Dim novoitem As New ListViewItem()
novoitem.Text = leitor(0)
[ô] inclui os itens no listview
lvdados.Items.Add(leitor.Item([Ô]CP652[Ô]))
Loop

For Each item As ListViewItem In lvdados.Items
If (item.Index Mod 2) = 0 Then
item.BackColor = Color.Beige
Else
item.BackColor = Color.White
End If
Next
con.Close()

End Sub

Alguem poderia me ajudar ?
JMSGRILO 07/05/2011 12:56:15
#373414
Para melhor entendimento segue minha tela de lançamento!!
KURTGU 07/05/2011 13:18:16
#373417
voce vai ter que adicionar os subitens , se nao me engano e assim.... ve ai.... nao sei se ta certo mais e algo parecido com isso hehehhe....


Do While leitor.Read()
lvdados= ListView1.Items.Add(leitor.GetString(0))
lvdados.SubItems.Add(leitor.GetString(1))
End While
PEGUDO 07/05/2011 17:02:49
#373438
Resposta escolhida
Você tem que adicionar os subitens da ListView também
Como você já tem os dados retornados vou dar um exemplo com ADODB:

Dim C As New ADODB.Connection, RecSet As Recordset
Dim Item As ListViewItem

Conectar() [txt-color=#007100][ô]Aqui é só um exemplo. Troque Conectar() pela sua string de conexão[/txt-color]

RecSet = C.Execute([Ô]SELECT * FROM CPPedidosLan[Ô])

While Not RecSet.EOF
Item = ListView1.Items.Add(RecSet([Ô]Quantidade[Ô]).Value.ToString
Item.SubItems.Add(RecSet([Ô]Descricao[Ô]).Value.ToString
Item.SubItems.Add(RecSet([Ô]VlrUnitario[Ô]).Value.ToString
Item.SubItems.Add(RecSet([Ô]VlrTotal[Ô]).Value.ToString
RecSet.MoveNext()
End While

Try
RecSet.Close()
Catch
RecSet = Nothing
Finally
C.Close
Enc Try
JMSGRILO 09/05/2011 09:31:07
#373489
Beleza Pegudo! Fiz umas alterações na sua dica e funcionou!
Agora preciso do seguinte:
Existe alguma forma de formatar estes dados ?, ou seja, preciso que o listview mostre os dados a esquerda ou a direita do grid, já que ele está seguindo a formatação das colunas quando fiz a criação.
Ex:
lvdados.View = View.Details
[ô]colunas criadas com nome da coluna e largura
lvdados.Columns.Add([Ô]Quantidade[Ô], 105, HorizontalAlignment.Center)
lvdados.Columns.Add([Ô]Descrição[Ô], 447, HorizontalAlignment.Left)
lvdados.Columns.Add([Ô]Valor Unitário[Ô], 130, HorizontalAlignment.Right)
lvdados.Columns.Add([Ô]Valor Total[Ô], 130, HorizontalAlignment.Right)
lvdados.FullRowSelect = True
lvdados.GridLines = True
lvdados.View = View.Details

Se eu mudar o aergumento: HorizontalAlignment.Center os dados do grid seguem o mesmo padrão.

Desde já agradeço!
JMSGRILO 09/05/2011 18:08:30
#373539
- Ai galera obrigado pela ajuda, foi de grande valia! consegui o efeito que desejava!!!!!
Tópico encerrado , respostas não são mais permitidas