Torna al Thread

Public Sub CaricaListview(ByVal NomeListview As ListView, ByVal sql As String, ByVal Colonne As Integer, ByVal ColonnaPrincipale As Integer, Optional ByVal ColoneVuote As Integer = 0) Dim DcListview As New SqlClient.SqlCommand(sql) Dim i As Integer Dim CV As Integer NomeListview.Items.Clear() ' ripulisci la combo DcListview.Connection = DB Dim DrListview As SqlClient.SqlDataReader = DcListview.ExecuteReader Do While DrListview.Read Dim myitem As New ListViewItem(CStr(DrListview(ColonnaPrincipale))) With myitem .UseItemStyleForSubItems = False For i = 1 To Colonne - 1 .SubItems.Add(CStr(DrListview(i))) Next If ColoneVuote > 0 Then For CV = 1 To ColoneVuote .SubItems.Add("") Next End If End With With NomeListview .BeginUpdate() .Items.AddRange(New ListViewItem() {myitem}) .EndUpdate() .EnsureVisible(NomeListview.Items.Count - 1) .Refresh() End With Loop DrListview.Close() DcListview.Dispose() End Sub Public Sub CaricaListviewStruttura(ByVal NomeForm As Form, ByVal NomelistView As ListView, ByVal Sql As String, ByVal Struttura As String) Dim primalista() As String Dim secondalista() As String Dim dcGriglia As New SqlClient.SqlCommand(Sql) NomelistView.Items.Clear() 'ripulisci la lista NomelistView.Columns.Clear() dcGriglia.Connection = DB Dim drGriglia As SqlClient.SqlDataReader = dcGriglia.ExecuteReader ' crea la struttura della list view primalista = Struttura.Split("|") Dim Lista(primalista.Length - 1) As ListaStruttura Dim i As Integer Dim e As Integer Dim g As Integer For i = 0 To primalista.Length - 1 secondalista = primalista(i).Split(",") Lista(i).nome = secondalista(0) Lista(i).colonna = secondalista(1) Lista(i).dimensione = CInt(secondalista(2)) If secondalista(3) = "Left" Then Lista(i).allineamento = HorizontalAlignment.Left ElseIf secondalista(3) = "center" Then Lista(i).allineamento = HorizontalAlignment.Center ElseIf secondalista(3) = "right" Then Lista(i).allineamento = HorizontalAlignment.Right Else Lista(i).allineamento = HorizontalAlignment.Left End If Next For e = 0 To Lista.Length - 1 ' colonne NomelistView.Columns.Add(Lista(e).nome, Lista(e).dimensione, Lista(e).allineamento) Next ' riempi la lista Do While drGriglia.Read Dim myitem As New ListViewItem(CStr(ValueNull(drGriglia(0), "string"))) With myitem .UseItemStyleForSubItems = False For g = 1 To Lista.Length - 1 .SubItems.Add(CStr(ValueNull(drGriglia(drGriglia.GetOrdinal(Lista(g).colonna)), "string"))) Next End With With NomelistView .BeginUpdate() .Items.AddRange(New ListViewItem() {myitem}) .EndUpdate() .EnsureVisible(NomelistView.Items.Count - 1) .Refresh() End With Loop drGriglia.Close() dcGriglia.Dispose() End Sub
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5