78 messaggi dal 27 ottobre 2006
ciao a tutti
in una gridview di news; devo controllare se la news è anche evento: se lo è, ho il checkbox checked, altrimenti no;
nel rowdatabound ho messo questo:

Protected Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GridView1.RowDataBound

comConfrontaEventi.Parameters.AddWithValue("@idNews", 9)
comConfrontaEventi.CommandText = "SELECT idNews FROM Eventi where idnews= @idNews"

Dim objReader As OleDbDataReader
objReader = comConfrontaEventi.ExecuteReader()

Dim boxEv As New CheckBox
boxEv = e.Row.FindControl("BoxEvento")

If objReader.Read Then
boxEv.Checked = True
Else
boxEv.Checked = False
End If
end sub

e l'errore che mi dà sulla riga "boxEv.Checked = False" è che "Object reference not set to an instance of an object."
ma perchè??? nn mi trova il boxevento nella riga????
Prova a controllare RowType.

Protected Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GridView1.RowDataBound
    '...
If e.Row.RowType = DataControlRowType.DataRow Then
    '...
    Dim boxEv As CheckBox = DirectCast(e.Row.FindControl("BoxEvento"), CheckBox)
    boxEv.Checked = objReader.Read()
End If
objReader.Close()
End Sub


PS: Chiudi il DataReader (e occhio alle eccezioni).
Modificato da naighes il 18 ottobre 2007 12.02 -

Nicola Baldi
"Make things as simple as possible, but not simpler."
>>> My blog <<<

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.