bueno no entiendo mucho tu codigo pero porque no haces de la siguiente manera primero te creas un modulo donde iran tus variables globales
Código vb.net:
Ver originalModule ModSQL
public Con as new SqlConnection
public Com as new SqlDataAdapter
public Adp as new SqlDataAdapter
public Ds as new DataSet
public Dt as new DataTable
sub Conexion()
try
Con = new SQLConnection("Server=(local);DataBase=MiBD;UID=SA;Pwd=123;Integrated Security=false")
if Con.State = 0 Then Con.Open()
catch ex as exception
end try
end sub
sub CerrarConexion()
if Con
.state = 1 then Con
.Close() end Sub
end Module
' Luego en tu Formulario en el evento load supongo yo
Private Sub form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
try
Conexion()
Com = new SqlCommand
With Com
.Connection = Con
.CommandType=CommandType.Text ' Puede ser tambien un procedimiento almacenado
.CommandText = "Select * From TuTabla"
end With
Adp = new SqlDataAdapter(Com)
Adp.fill(Ds,"x")
Dt = Ds.tables("x")
With MiListView ' Nombre de tu ListView
.BeginUpdate() ' Deja el Forzado del Dibujo del Listview
.Clear() ' Limpia el Contenido
.View = View.Details ' Vista en Forma de Detalle
.LabelEdit = False ' Impedir la Edicion de los Datos
.AllowColumnReorder = False ' Impedir que se pueda arrastrar el ancho de la columna
.CheckBoxes = CheckBox ' Permitir si se Mostrara Checkbox al Costado del Listview
.FullRowSelect = True ' Permitir Seleccionar la Fila Completa del LisView
.GridLines = True ' Muestra Lineas en el ListView
.MultiSelect = MultiSeleccion ' Permitir la Multiple Seleccion de Filas del LisView
For i As Integer = 0 To Dt.Columns.Count - 1 ' Rellena las Columnas al ListView
.Columns.Add((i + 1).ToString, Dt.Columns(i).ColumnName.ToString)
Next
For i As Integer = 0 To Dt.Rows.Count - 1 ' Rellena Filas en el ListView
.Items.Add(Dt.Rows(i)(0).ToString)
For j As Integer = 1 To Dt.Columns.Count - 1
.Items(i).SubItems.Add(Dt.Rows(i)(j).ToString)
Next
Next
.EndUpdate() ' Redibuja el ListView
End With
catch ex as exception
finally
CerrarConexion()
Com.Dispose
Adp.Dispose
Ds.Dispose
Dt.Dispose
end try
end sub
Tu puedes adaptar este codigo a tu gusto