Columnas repetidas en lisview1
Estoy usando Ado y trabajando con el ejemplo de la base de datos Biblio.mdb que viene con visual basic.
Deseo que se muestren en un listview1 los datos de la consulta que hago en un select y esto lo hace bien y muestra los datos en el listview1, pero el problema que existe es que si vuelvo a presionar el command1 para volver a realizar el filtro, los encabezados y el resultado del filtro se duplican, es decir, vuelven a aparecer. Presioné otra vez sobre command1 como prueba para ver si no salia algo mal.
El código usado es el siguiente:
Set cnn = New ADODB.Connection
Set rst = New ADODB.Recordset
Dim campo As Integer
Dim item As ListItem
Dim i As Long
With cnn
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Archivos de programa\Microsoft Visual Basic\BIBLIO.MDB;Persist Security Info=False;"
.Open
End With
rst.Open "SELECT * FROM Authors", cnn, adOpenDynamic, adLockOptimistic
For campo = 0 To rst.Fields.Count - 1
ListView1.ColumnHeaders.Add , , rst.Fields(campo).Name
Next
While Not rst.EOF
Set itmX = ListView1.ListItems.Add(, , CStr(rst!Au_ID))
If Not IsNull(rst!Author) Then
itmX.SubItems(1) = CStr(rst!Author)
End If
If Not IsNull(rst![Year Born]) Then
itmX.SubItems(2) = rst![Year Born]
End If
Rst. MoveNext
Wend
ListView1.View = lvwReport
Rst. Close
Cnn. Close
Si solo le doy un click al command1 queda bien:
Au_ID Author [Year Born]
1 Juna
2 Pablo
3 Pedro
4 Raul
Si le vuelvo a dar click mira lo que sucede:
Au_ID Author [Year Born] Au_ID Author [Year Born]
1 Juna
2 Pablo
3 Pedro
4 Raul
1 Juna
2 Pablo
3 Pedro
4 Raul
Deseo que se muestren en un listview1 los datos de la consulta que hago en un select y esto lo hace bien y muestra los datos en el listview1, pero el problema que existe es que si vuelvo a presionar el command1 para volver a realizar el filtro, los encabezados y el resultado del filtro se duplican, es decir, vuelven a aparecer. Presioné otra vez sobre command1 como prueba para ver si no salia algo mal.
El código usado es el siguiente:
Set cnn = New ADODB.Connection
Set rst = New ADODB.Recordset
Dim campo As Integer
Dim item As ListItem
Dim i As Long
With cnn
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Archivos de programa\Microsoft Visual Basic\BIBLIO.MDB;Persist Security Info=False;"
.Open
End With
rst.Open "SELECT * FROM Authors", cnn, adOpenDynamic, adLockOptimistic
For campo = 0 To rst.Fields.Count - 1
ListView1.ColumnHeaders.Add , , rst.Fields(campo).Name
Next
While Not rst.EOF
Set itmX = ListView1.ListItems.Add(, , CStr(rst!Au_ID))
If Not IsNull(rst!Author) Then
itmX.SubItems(1) = CStr(rst!Author)
End If
If Not IsNull(rst![Year Born]) Then
itmX.SubItems(2) = rst![Year Born]
End If
Rst. MoveNext
Wend
ListView1.View = lvwReport
Rst. Close
Cnn. Close
Si solo le doy un click al command1 queda bien:
Au_ID Author [Year Born]
1 Juna
2 Pablo
3 Pedro
4 Raul
Si le vuelvo a dar click mira lo que sucede:
Au_ID Author [Year Born] Au_ID Author [Year Born]
1 Juna
2 Pablo
3 Pedro
4 Raul
1 Juna
2 Pablo
3 Pedro
4 Raul
1 Respuesta
Respuesta de emperador20
1