TRAZENDO DADOS DE LISTVIEW PARA TEXTBOX

EDULOCO 31/10/2012 12:55:20
#413270


Galera boa tarde, tudo bem ( tirando o calor rsrs ), bom pessoal brincadeiras a parte preciso que vocês me ajudem com uma dúvida que me surgiu aqui, vamos dizer que eu tenha uma pasta cheia de XML[ô]s referentes a NFE e tenho também um listview, agora o que eu fiz... eu peguei e fiz um [Ô]for each[Ô] para checar de nota por nota dentro dessa pasta pegando 3 informações como ( Cliente , Número da nota e Emissão ) e ir jogando ao mesmo tempo num listview, até ai tudo bem eu fiz tranquilo, porém eu quero fazer o seguinte que quando eu dê duplo clique em algum desses items listados no listview usando o evento [Ô]itemactivate[Ô] ou algum outro que vocês me recomendarem, ele pegar o .xml dessa nota que eu executei o duplo-clique e preencher os dados do meu textbox, os dados no textbox eu vou saber jogar, a dúvida mesmo consiste em como dar o duplo-clique no item desejado e ele puxar apenas o XML que eu preciso para mostrar os dados? o.O

agradeço desde já!

Acima uma foto de exemplo para vocês entenderem melhor o que eu estou tentando fazer!
ADHEL 01/11/2012 11:28:07
#413356
Resposta escolhida
Posta a rotina que você preenche o ListView com as 3 informações por favor.
EDULOCO 01/11/2012 16:36:43
#413389
Opa, segue o código


Private Sub btnCompras_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCompras.Click
lsNotas.Items.Clear()
txtTotalNotas.Clear()
Dim lista = Directory.GetFiles([Ô]G:\TITE\NFE\compras[Ô], [Ô]*.xml[Ô])
For Each notas In lista
Dim xmldoc As New XmlDocument
xmldoc.Load(notas)
Dim ns As New XmlNamespaceManager(xmldoc.NameTable)
ns.AddNamespace([Ô]nfe[Ô], [Ô]http://www.portalfiscal.inf.br/nfe[Ô])
Dim item As New ListViewItem
item.Text = xmldoc.SelectSingleNode([Ô]//nfe:infNFe/nfe:emit/nfe:xNome[Ô], ns).InnerText
item.SubItems.Add(xmldoc.SelectSingleNode([Ô]//nfe:infNFe/nfe:ide/nfe:nNF[Ô], ns).InnerText)
item.SubItems.Add(xmldoc.SelectSingleNode([Ô]//nfe:infNFe/nfe:ide/nfe:dEmi[Ô], ns).InnerText)
Me.lsNotas.Items.Add(item)
txtTotalNotas.Text = lsNotas.Items.Count - 1
Next
End Sub
ADHEL 01/11/2012 20:31:50
#413413
O final dos arquivos xml é
[Ô]-nfe.xml[Ô]
ou
[Ô]-procNFe.xml[Ô] ?
EDULOCO 02/11/2012 14:45:38
#413435
*-nfe.xml o motor de emissão de notas emite com o final assim.

numerosdachave-nfe.xml
ADHEL 02/11/2012 15:23:19
#413436
  Private Sub btnCompras_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCompras.Click
lsNotas.Items.Clear()
txtTotalNotas.Clear()
Dim lista = Directory.GetFiles([Ô]G:\TITE\NFE\compras[Ô], [Ô]*.xml[Ô])
[ô] Dim lista = Directory.GetFiles([Ô]C:\[Ô], [Ô]*.xml[Ô])
For Each notas In lista
Dim xmldoc As New XmlDocument
xmldoc.Load(notas)
Dim ns As New XmlNamespaceManager(xmldoc.NameTable)
ns.AddNamespace([Ô]nfe[Ô], [Ô]http://www.portalfiscal.inf.br/nfe[Ô])
Dim item As New ListViewItem
item.Text = xmldoc.SelectSingleNode([Ô]//nfe:infNFe/nfe:emit/nfe:xNome[Ô], ns).InnerText
item.SubItems.Add(xmldoc.SelectSingleNode([Ô]//nfe:infNFe/nfe:ide/nfe:nNF[Ô], ns).InnerText)
item.SubItems.Add(xmldoc.SelectSingleNode([Ô]//nfe:infNFe/nfe:ide/nfe:dEmi[Ô], ns).InnerText)
item.SubItems.Add(xmldoc.SelectSingleNode([Ô]//nfe:protNFe/nfe:infProt/nfe:chNFe[Ô], ns).InnerText)
Me.lsNotas.Items.Add(item)
txtTotalNotas.Text = lsNotas.Items.Count
Next
End Sub


Veja que adicionei mais uma coluna no ListView para adicionar essa linha >>> item.SubItems.Add(xmldoc.SelectSingleNode([Ô]//nfe:protNFe/nfe:infProt/nfe:chNFe[Ô], ns).InnerText)
Com essa linha pego a chave

e coloquei assim nesse evento do ListView
   Private Sub lsNotas_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles lsNotas.MouseClick
nomeArquivoXML = [Ô]G:\TITE\NFE\compras\[Ô] & lsNotas.SelectedItems(0).SubItems(3).Text & [Ô]-Nfe.xml[Ô]
carrega_dados()
End Sub

Segue o exemplo completo em anexo
Qualquer dúvida posta aí.
EDULOCO 05/11/2012 08:48:07
#413460
Deu certo ADHEL, era exatamente isso que eu estava precisando, vou refazer aqui agora usando sua ideia e mudar para o modo que eu preciso *-*, muito obrigado ADHEL. Vou encerrar o tópico pelo momento, caso hava alguma dúvida nesse assunto para evitar eu criar outro topico eu reativo esse.

Mas obrigado mesmo *-*
EDULOCO 07/11/2012 11:46:12
#413710
ADHEL me surgiu uma dúvida relacionada a esse assunto, usando a idéia de seu outro tópico que me ajudou

http://www.vbmania.com.br/pages/index.php?varModulo=Forum&varMethod=abrir&varID=412761&varWorld=

Como eu faço para tratar um cell do datagridview? exemplo um campo de valor unitário do XML ele vem como por exemplo : 38,0000000
como eu transformo para R$38,00?

Com banco de dados eu só usava por exemplo : datagridview.columns([Ô]Valor.Unitário[Ô]).defaultcellstyle.format = [Ô]c[Ô] e pronto tá formatado para moeda, nesse caso eu estou tentando fazer o mesmo mas ele não está alterando as colunas :s

Pode me dar uma luz por favor? Obrigado.
Tópico encerrado , respostas não são mais permitidas