184 messaggi dal 21 febbraio 2005
ho capito avresti cmq due immagini da gestire, una da nascondere e una da visualizzare.

da vb come fai a gestirle?


codice della pagina


<asp:TemplateColumn HeaderText="Carica dati esterni" SortExpression="datiesterni">
<HeaderStyle HorizontalAlign="Center"></HeaderStyle>
<ItemStyle HorizontalAlign="center"></ItemStyle>
<ItemTemplate>
<asp:Image id="imgcheckdatiesterni" ImageUrl=images/f1.gif ></asp:Image>
<asp:CheckBox id="checkdatiesterni" runat="server" Enabled=False ></asp:CheckBox>
</ItemTemplate>
<EditItemTemplate runat="server" >
<asp:CheckBox id="checkdatiesterni1" runat="server" > </asp:CheckBox>
</EditItemTemplate>
</asp:TemplateColumn>


codice VB




Private Sub DataGrid1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles DataGrid1.ItemDataBound

Dim ceck As CheckBox
Dim i As System.Web.UI.WebControls.Image
If (e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem) Then
If e.Item.DataItem("Preprocess") = "SI" Then
ceck = e.Item.FindControl("checkPreprocess")
i = e.Item.FindControl("imgcheckdatiesterni")
i.Visible = True
ceck.Checked = True
Else
ceck = e.Item.FindControl("checkPreprocess")
i = e.Item.FindControl("imgcheckdatiesterni")
i.Visible = False
ceck.Checked = True
End If
If e.Item.DataItem("postprocess") = "SI" Then
ceck = e.Item.FindControl("checkpostprocess")
ceck.Checked = True
End If
If e.Item.DataItem("pwd") = "SI" Then
ceck = e.Item.FindControl("checkpwd")
ceck.Checked = True
End If
If e.Item.DataItem("datiesterni") = "SI" Then
ceck = e.Item.FindControl("checkdatiesterni")
ceck.Checked = True
End If

ElseIf (e.Item.ItemType = ListItemType.EditItem) Then


If e.Item.DataItem("Preprocess") = "SI" Then
ceck = e.Item.FindControl("checkPreprocess1")
ceck.Checked = True
End If
If e.Item.DataItem("postprocess") = "SI" Then
ceck = e.Item.FindControl("checkpostprocess1")
ceck.Checked = True
End If
If e.Item.DataItem("pwd") = "SI" Then
ceck = e.Item.FindControl("checkpwd1")
ceck.Checked = True
End If
If e.Item.DataItem("datiesterni") = "SI" Then
ceck = e.Item.FindControl("checkdatiesterni1")
ceck.Checked = True
End If

End If
io non nascondere o meno le due immagini, ma cambiere l'ImageUrl del controllo Image.

ciao marco

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

http://nostromo.spaces.live.com/default.aspx
184 messaggi dal 21 febbraio 2005
OK POSSO FARE ANCHE COSì, MA PER CAMBIARE L'IMAGEURL DEVO SEMPRE ISTANZIARE L'OGGETTO GIUSTO?
COME FACCIO?
è lo stesso condetto utilizzato per la ceck, nell'evento ItemDataBound, recuperi un riferimento all'immagine e imposto le proprietà che ti servono. è esattamente lo stesso procedimento.

ciao marco

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

http://nostromo.spaces.live.com/default.aspx
184 messaggi dal 21 febbraio 2005
è quello che ho fatto!!!!
non funziona però.....

se guardi il codice è proprio così che ho fatto


i = e.Item.FindControl("imgcheckdatiesterni")
i.Visible = False


i però è nullo!!!!
non capisco come mai

nella pagina l'immagine è:
<asp:Image id="imgcheckdatiesterni" ImageUrl=images/f1.gif ></asp:Image>


è per quello che continuo a romperti.
ho utilizzato lo stesso metodo delle check,ma per l'image non va!!!
ciao
Ivan
184 messaggi dal 21 febbraio 2005
devo mettere
runat=server dentro al tag image?

ho provato e mi da errore la pagina!!!
se ho letto bene stai cercado l'immagine all'iterno di questa condizione:

e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem


così facendo, ti genera un errore perche l'immagine che stai cercando non esiste nell'EditItemTemplate

ciao marco

p.s. non mi rompi affatto :)
Modificato da nostromo il 26 agosto 2005 15.55 -

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

http://nostromo.spaces.live.com/default.aspx
184 messaggi dal 21 febbraio 2005
si nell'edititem template non esiste,
ma anche se la mettessi non avrei lo stesso ID!

cmq dovrebbe trovarla o sbaglio?
sono in questa if
If (e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem) Then

e l'immagine è dentro l'ItemTemplate!!!

perchè non me la trova?

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.