Torna al Thread
' se la riga è di tipo riga interna al datagrid
If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Then
' ricavo il numero di immagini dalla sorgente andando a ricavare il datarowview
' della riga corrente
Dim DRV As DataRowView = DirectCast(e.Item.DataItem, DataRowView)
Dim sqlImg As String = ""
Dim sqlOrd As String = ""
'Caricamento Combo ordinamento
sqlImg = "Select count(*) as TotImg from Immagini where Cd_Prodotti = " & Request("Cd_Pro")
Dim cn As New OleDb.OleDbConnection(setCnString)
cn.Open()
Dim cmd As New OleDb.OleDbCommand(sqlImg, cn)
Dim drImg As OleDb.OleDbDataReader = cmd.ExecuteReader()
drImg.Read()
Dim NumImmagini As Integer = drImg.Item("TotImg")
drImg.Close()
cn.Close()
'ricavo il dropdownlist
Dim DDLImg As DropDownList = DirectCast(e.Item.FindControl("DDLOrdinamento"), DropDownList)
' aggiungo una riga fittizia
DDLImg.Items.Add(New ListItem("- Selezionare - ", "0"))
' se il numero di immagini è maggiore di 0
Dim i As Integer = 0
If NumImmagini > 0 Then
For i = 1 To NumImmagini
DDLImg.Items.Add(New ListItem(i.ToString(), i.ToString()))
Next
sqlOrd = "Select Ordinamento from Immagini where Cd_Prodotti = " & Request("Cd_Pro") & _
" and id_immagini = " & e.Item.Cells(0).Text
cn.Open()
Dim cmd2 As New OleDb.OleDbCommand(sqlOrd, cn)
Dim drOrd As OleDb.OleDbDataReader = cmd2.ExecuteReader()
drOrd.Read()
DDLImg.SelectedIndex = drOrd.Item("Ordinamento")
drOrd.Close()
cn.Close()
Else
DDLImg.Visible = False
End If
End If