Popolare una listview in visual studio 2008 e tabelle in sqlserver 200...

venerdì 07 agosto 2009 - 16.46

Mau67 Profilo | Expert

Un saluto a tutto il forum, ho la necessità di popolare una listview in seguito a dei parametri che filtro con delle SELECT Case.

Quindi devo popolare questa listview con una select con cui preleva alcuni dati dalla tabella e li inserisco nei campi che stabilisco, e uno o due campi devo inserire una stringa io.

Chi mi può aiutare?

Vi posto il codice che uso per popolare la listview con i dati che preleva dalle tabelle:

Dim thisConnection As New SqlClient.SqlConnection(sqlString)



Dim data As Date = Microsoft.VisualBasic.DateValue(Now)


Dim sql As String = "SELECT Anagrafica.Cognome + ' ' + Anagrafica.Nome AS Amministrato, Anagrafica.Categoria, Anagrafica.Omogenizzazione, Promozioni.Decorrenza," & _
"Gradi.Grado, Gradi.ID, Anagrafica.ID AS IDAnagrafica, TipologiaOperative.ID AS IDOperativa," & _
"TipologiaOperative.Operativa FROM Anagrafica INNER JOIN Promozioni ON Anagrafica.ID = Promozioni.IDAna INNER JOIN Gradi ON Promozioni.IDGrado = Gradi.ID INNER JOIN TipologiaOperative ON Promozioni.IDOperativa = TipologiaOperative.ID WHERE (Promozioni.Reg = 'No')AND (Promozioni.Decorrenza <= '" & data & "')"



' Svuota la casella ListView1 e
' la casella di testo
ListView1.Items.Clear()

Dim thisCommand As New SqlClient.SqlCommand(sql, thisConnection)



' Set the view to show details.
ListView1.View = View.Details
' Allow the user to edit item text.
ListView1.LabelEdit = True
' Allow the user to rearrange columns.
ListView1.AllowColumnReorder = True
' Display check boxes.
ListView1.CheckBoxes = True
' Select the item and subitems when selection is made.
ListView1.FullRowSelect = True
' Display grid lines.
ListView1.GridLines = True
' Sort the items in the list in ascending order.
ListView1.Sorting = SortOrder.Ascending




Try

Me.ListView1.Columns.Clear()


thisConnection.Open()

Dim thisReader As SqlClient.SqlDataReader = thisCommand.ExecuteReader()

While (thisReader.Read())
Dim item As New ListViewItem(thisReader.Item(0).ToString, 0)
item.SubItems.Add(thisReader.Item(1).ToString)
item.SubItems.Add(thisReader.Item(2).ToString)
item.SubItems.Add(thisReader.Item(3).ToString)
item.SubItems.Add(thisReader.Item(4).ToString)
item.SubItems.Add(thisReader.Item(8).ToString)
item.SubItems.Add(thisReader.Item(5).ToString)
item.SubItems.Add(thisReader.Item(6).ToString)
item.SubItems.Add(thisReader.Item(7).ToString)
item.SubItems.Add(thisReader.Item(8).ToString) <<<<<<<< QUI VOGLIO INSERIRE "GRADO SPERIORE"

ListView1.Items.AddRange(New ListViewItem() {item})
End While

ListView1.Columns.Add("AMMINISTRATO", 250, HorizontalAlignment.Left)
ListView1.Columns.Add("CATEGORIA", 100, HorizontalAlignment.Left)
ListView1.Columns.Add("OMOGENIZZAZIONE", 150, HorizontalAlignment.Left)
ListView1.Columns.Add("DECORRENZA", 100, HorizontalAlignment.Left)
ListView1.Columns.Add("GRADO", 100, HorizontalAlignment.Left)
ListView1.Columns.Add("OPERATIVA", 150, HorizontalAlignment.Left)
ListView1.Columns.Add("ULTERIORE", 150, HorizontalAlignment.Left) <<<<<<<<<< QUESTA E' L'INTESTAZIONE DELL COLONNA




Catch ex As SqlClient.SqlException
MsgBox("Error: " & ex.ToString())
Finally
thisConnection.Close()
End Try


Grazie
Mau67
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5