Mostrar ListView

18/10/2004 - 06:38 por Fernando | Informe spam
Amigos quiero hacer lo siguiente a ver si alguien me puede
ayudar mostrar asi :

atributo1 atributo2 atributo3 atributo4

pero nose como hacerlo saco las un select * tabla
y mediante un for :
Dim Fila As DataRow
For Each fila In tabla.Rows
Me.ListView1.Items.Add(fila.Item("atributo1"),1)
Me.ListView1.Items.Add(fila.Item("atributo1"),2)
Me.ListView1.Items.Add(fila.Item("atributo1"),3)
Next
Perdone pero aun estoy conociendo el Lenguaje gracias a
todos.. :)

Preguntas similare

Leer las respuestas

#6 Anonimo
18/10/2004 - 16:46 | Informe spam
creo que no me deje entender aqui les paso el codigo a ver
si ahora me hago enterder un poquito mas.. gracias por las
ayudas.. :)

el problema esta en el for :
en el List me muestra:

1
atribu1
atribt2
2
atrib3
atrib4
3
y deberia ser :
1 atrib1 atrib2
2 atrib3 atrib4
y asi sucesivamente por el momento solo pruebo con 3 campos
pero creo que en el futuro manejare mas..
Nuevamente gracias.. :)

Private Sub Button1_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles Button1.Click
conexion.ConnectionString = "server=(local);" & _
"database=mibase;uid=sa;pwd3;"
'creando adaptador
Dim adaptador As New SqlDataAdapter("select * from
unidad", conexion)
'crear dataset
Dim fijar As New DataSet()
'creando objeto de tabla
conexion.Open()
adaptador.Fill(fijar, "unidad")
MessageBox.Show("Conexion exitosa")
conexion.Close()
Dim tabla As DataTable
Dim fila As DataRow
tabla = fijar.Tables("unidad")
Dim conta As Integer
For Each fila In tabla.Rows
'mostrar datos
Me.ListView1.Items.Add(fila.Item(0), conta)
Me.ListView1.Items.Add(fila.Item(1), conta)
Me.ListView1.Items.Add(fila.Item(2), conta)
conta = conta + 1
Next
MessageBox.Show("Conexion Cerrada")
End Sub
Respuesta Responder a este mensaje
#7 Oscar
18/10/2004 - 22:19 | Informe spam
Gracias por todo,
Saludos

"Jorge Serrano [MVP VB]"
escribió en el mensaje news:
Hola Oscar,

en ambos casos existen diferencias que dependiendo de la complejidad y
volumen de datos manejados, puede resultar más efectivo utilizar una clase u
otra.

Me explico;

DataReader es un cursor que recorre los registros en una sóla dirección,
hacia adelante. Su particularidad reside en que está conectado a la fuente de
datos.

DataSet trabaja con los datos en memoria, es decir, es una colección
desconectada, de ahí, que si el volumen de datos es grande, indudablemente
incide en el rendimiento de la aplicación, algo que a mi modo de ver no sería
el caso de Fernando, porque de serlo, el control ListView, quizás no fuera el
mejor en este caso. De todos los modos, otra particularidad del DataSet es
que se basa en secuencias de datos XML, lo cuál es a su vez una carga extra
de datos en memoria.

De todos los modos, hay un fenomenal artículo de Dino Esposito sobre temas
varios en el que aunque no comenta implícitamente el tema referente a las
diferencias claras entre DataSet y DataReader, no deja de ser interesante su
lectura.
http://www.microsoft.com/spanish/ms...222001.asp

Un saludo,

Jorge Serrano Pérez
Microsoft MVP VB.NET
http://www.portalvb.com/
http://weblogs.golemproject.com/jorge/


"Oscar" wrote:

> Jorge,
>
> Una duda: en ese caso (para llenar listas, etc.) no sería mejor usar un datareader? consume


menos
> recursos, no?
>
> Gracias,
>
> "Jorge Serrano [MVP VB]"
> escribió en el mensaje news:
> > Hola Fernando,
> >
> > yo para hacer eso, utilizo normalmente un DataSet y recorro la selección y
> > añado los campos.
> >
> > Algo similar a lo que comentas con el dataset sería:
> >
> > Dim Row
> > intContador = 1
> > For Each Row In objDS.Tables("Ejemplo").Rows
> > ListView1.Items.Add(Row(0), intContador)
> > intContador = intContador + 1
> > Next
> >
> > Espero que te sirva.
> >
> > Un saludo,
> >
> > Jorge Serrano Pérez
> > Microsoft MVP VB.NET
> > http://www.portalvb.com/
> > http://weblogs.golemproject.com/jorge/
> >
> >
> > "Fernando" wrote:
> >
> > > Amigos quiero hacer lo siguiente a ver si alguien me puede
> > > ayudar mostrar asi :
> > >
> > > atributo1 atributo2 atributo3 atributo4
> > >
> > > pero nose como hacerlo saco las un select * tabla
> > > y mediante un for :
> > > Dim Fila As DataRow
> > > For Each fila In tabla.Rows
> > > Me.ListView1.Items.Add(fila.Item("atributo1"),1)
> > > Me.ListView1.Items.Add(fila.Item("atributo1"),2)
> > > Me.ListView1.Items.Add(fila.Item("atributo1"),3)
> > > Next
> > > Perdone pero aun estoy conociendo el Lenguaje gracias a
> > > todos.. :)
> > >
> >
>
>
>
>

Respuesta Responder a este mensaje
#8 Oscar
18/10/2004 - 22:24 | Informe spam
Fernando,

Para que te aparezca como dices, tienes que añadir los elementos a la colección subitems del item
inicial, por ejemplo

dim item as listviewitem

abres dataset o datareader... y en el bucle

do while datareader.read

item=listview1.items.add("atributo1")
item.subitems.add("atributo2")
item.subitems.add("atributo3")

loop

quedaría así

atributo1 atributo2 atributo3

Saludos,

escribió en el mensaje
news:14a901c4b521$4bb8ffa0$
creo que no me deje entender aqui les paso el codigo a ver
si ahora me hago enterder un poquito mas.. gracias por las
ayudas.. :)

el problema esta en el for :
en el List me muestra:

1
atribu1
atribt2
2
atrib3
atrib4
3
y deberia ser :
1 atrib1 atrib2
2 atrib3 atrib4
y asi sucesivamente por el momento solo pruebo con 3 campos
pero creo que en el futuro manejare mas..
Nuevamente gracias.. :)

Private Sub Button1_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles Button1.Click
conexion.ConnectionString = "server=(local);" & _
"database=mibase;uid=sa;pwd3;"
'creando adaptador
Dim adaptador As New SqlDataAdapter("select * from
unidad", conexion)
'crear dataset
Dim fijar As New DataSet()
'creando objeto de tabla
conexion.Open()
adaptador.Fill(fijar, "unidad")
MessageBox.Show("Conexion exitosa")
conexion.Close()
Dim tabla As DataTable
Dim fila As DataRow
tabla = fijar.Tables("unidad")
Dim conta As Integer
For Each fila In tabla.Rows
'mostrar datos
Me.ListView1.Items.Add(fila.Item(0), conta)
Me.ListView1.Items.Add(fila.Item(1), conta)
Me.ListView1.Items.Add(fila.Item(2), conta)
conta = conta + 1
Next
MessageBox.Show("Conexion Cerrada")
End Sub

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida