è un pà diverso, si parte creando un event handler per l'evento DataBinding, purtroppo devo scappare, se non risolvi o non arrivano altre soluzioni riprendiamo domani.

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
31 messaggi dal 26 febbraio 2007
VI posto il codice della pagina relativo al formview...grazie...

Protected Sub FormView1_DataBound(ByVal sender As Object, ByVal e As System.EventArgs) Handles FormView1.DataBound
        Dim prezzo As Label = CType(FormView1.Row.FindControl("prezzo_scontatoLabel"), Label)
        Dim scheda As Label = CType(FormView1.Row.FindControl("Label1"), Label)
        Dim nuovo As CheckBox = CType(FormView1.Row.FindControl("CheckBox1"), CheckBox)
        Dim inarrivo As CheckBox = CType(FormView1.Row.FindControl("CheckBox2"), CheckBox)
        Dim dispo As Label = CType(FormView1.Row.FindControl("disponibilitaLabel"), Label)
        Dim imgdisp As Image = CType(FormView1.Row.FindControl("Image2"), Image)
        Dim imgextra As Image = CType(FormView1.Row.FindControl("image3"), Image)
        Dim imgextra2 As Image = CType(FormView1.Row.FindControl("image4"), Image)

        If CInt(dispo.Text) <= 0 Then
            imgdisp.ImageUrl = "icona_non_disponibile.gif"
        ElseIf CInt(dispo.Text) > 0 And inarrivo.Checked Then
            imgdisp.ImageUrl = "icona_non_disponibile.gif"
        ElseIf CInt(dispo.Text) > 5 Then
            imgdisp.ImageUrl = "icona_disponibile.gif"
        ElseIf CInt(dispo.Text) > 0 And CInt(dispo.Text) <= 5 Then
            imgdisp.ImageUrl = "icona_media.gif"
        End If

        If nuovo.Checked Then
            imgextra.ImageUrl = "nuovo.gif"
        Else
            imgextra.Visible = False
        End If

        If inarrivo.Checked Then
            imgextra2.ImageUrl = "inarrivo.gif"
        Else
            imgextra2.Visible = False
        End If

        Dim extra As Label = CType(FormView1.Row.FindControl("Label2"), Label)


        Dim codice As Label = CType(FormView1.Row.FindControl("codiceLabel"), Label)

        scheda.Text = Replace(scheda.Text, vbCrLf, "<br>")
        If Session("livello") <> "1" And Session("livello") <> "" Then

            Dim sql As String = ""

            Select Case Session("livello")
                Case "2"
                    sql = "SELECT sconto2 FROM articoli WHERE codice = '" & codice.Text & "'"
                Case "3"
                    sql = "SELECT sconto3 FROM articoli WHERE codice = '" & codice.Text & "'"
                Case "4"
                    sql = "SELECT sconto4 FROM articoli WHERE codice = '" & codice.Text & "'"
                Case "5"
                    sql = "SELECT sconto5 FROM articoli WHERE codice = '" & codice.Text & "'"
                Case "6"
                    sql = "SELECT sconto6 FROM articoli WHERE codice = '" & codice.Text & "'"
                Case "7"
                    sql = "SELECT sconto7 FROM articoli WHERE codice = '" & codice.Text & "'"
                Case Else
                    'nulla
            End Select

            Dim conn As New SqlClient.SqlConnection
            Dim cmd As New SqlClient.SqlCommand
            conn.ConnectionString = ConfigurationManager.ConnectionStrings(1).ConnectionString
            conn.Open()
            cmd.CommandType = CommandType.Text
            cmd.CommandText = sql
            cmd.Connection = conn
            Dim sconto As Integer = cmd.ExecuteScalar
            conn.Close()
            prezzo.Text = CDbl(prezzo.Text) - ((CDbl(prezzo.Text) * CInt(sconto)) / 100)
        End If
    End Sub
ecco come recuperare l'oggetto DataRowView

Protected Sub FormView1_DataBound(ByVal sender As Object, ByVal e As EventArgs) 
              
            
        Dim _row As System.Data.DataRowView = DirectCast(FormView1.DataItem, System.Data.DataRowView) 
     
End Sub 



recuperato la prodedura è la stessa.


ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
31 messaggi dal 26 febbraio 2007
mi dice che e.row non è un membro di system.eventargs

all'interno del Visual web developer....
posta il codice che stai utilizzando.

perche come vedi dal codice:


Dim _row As System.Data.DataRowView = DirectCast(FormView1.DataItem, System.Data.DataRowView)


l'oggetto DataRow lo ottendo castando la proprietà DataItem del FormView

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
31 messaggi dal 26 febbraio 2007
Protected Sub FormView1_DataBound(ByVal sender As Object, ByVal e As EventArgs)

        Dim _row As System.Data.DataRowView = DirectCast(FormView1.DataItem, System.Data.DataRowView)

        If e.Row.RowType = DataControlRowType.DataRow Then
            Dim _row As System.Data.DataRowView = DirectCast(e.Row.DataItem, System.Data.DataRowView)
            Dim obj2 As Object = _row("nuovo")
            Dim nuovo As CheckBox = CType(e.Row.FindControl("checkbox1"), CheckBox)
            nuovo.Checked = False
            If TypeOf obj2 Is Boolean Then
                nuovo.Checked = CBool(obj2)
            End If
        Else
            'nisba
        End If
        If e.Row.RowType = DataControlRowType.DataRow Then
            Dim _row As System.Data.DataRowView = DirectCast(e.Row.DataItem, System.Data.DataRowView)
            Dim obj2 As Object = _row("inarrivo")
            Dim inarrivo As CheckBox = CType(e.Row.FindControl("checkbox2"), CheckBox)
            inarrivo.Checked = False
            If TypeOf obj2 Is Boolean Then
                inarrivo.Checked = CBool(obj2)
            End If
        Else
            'nisba
        End If
adesso non ho tempo di correggerti il codice, ma è sufficente rimuovere:

If e.Row.RowType = DataControlRowType.DataRow Then

non è più necessario

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.